1

アプリケーションを変更する必要があります。変更には、ウィンドウメッセージループに投稿されるイベントの時刻の使用が含まれます。とにかく、簡単に言えば、私はgetmessagetimeメッセージの時間を取得するためにウィンドウメッセージハンドラーで使用しています。正常に動作しているように見えますが、のドキュメントには、メッセージループがで実行される場合はパラメータgetmessagetimeが返されると明示的に記載されていますが、このアプリケーションの場合のようにで実行される場合は何も示されていません。msg.timegetmessagepeekmessage(...,pm_remove)

したがって、問題は、getmessagetimeアプリケーションのメッセージループがで実行されるかどうか、またはコンボpeekmessage(...,pm_remove)のメッセージループを変更する許可をクライアントに要求する必要があるかどうかということです。peekmessage(...,pm_no_remove)+getmessageつまり、内部値はgetmessagetimeset bygetmessageまたはによって読み取られdispatchmessageますか?

msg.timeパラメーターを保持するようにメッセージループを変更するように単純に要求できない理由は、ユーザーがウィンドウのサイズを変更している場合、Windowsはアプリケーションのメッセージループではなく内部メッセージループを使用するため、msg.timeパラメーターが設定されないためです。したがってgetmessagetime、信頼できる時間を保証するために使用する必要があります。

4

0 に答える 0