アプリケーションを変更する必要があります。変更には、ウィンドウメッセージループに投稿されるイベントの時刻の使用が含まれます。とにかく、簡単に言えば、私はgetmessagetime
メッセージの時間を取得するためにウィンドウメッセージハンドラーで使用しています。正常に動作しているように見えますが、のドキュメントには、メッセージループがで実行される場合はパラメータgetmessagetime
が返されると明示的に記載されていますが、このアプリケーションの場合のようにで実行される場合は何も示されていません。msg.time
getmessage
peekmessage(...,pm_remove)
したがって、問題は、getmessagetime
アプリケーションのメッセージループがで実行されるかどうか、またはコンボpeekmessage(...,pm_remove)
のメッセージループを変更する許可をクライアントに要求する必要があるかどうかということです。peekmessage(...,pm_no_remove)+getmessage
つまり、内部値はgetmessagetime
set bygetmessage
またはによって読み取られdispatchmessage
ますか?
msg.timeパラメーターを保持するようにメッセージループを変更するように単純に要求できない理由は、ユーザーがウィンドウのサイズを変更している場合、Windowsはアプリケーションのメッセージループではなく内部メッセージループを使用するため、msg.time
パラメーターが設定されないためです。したがってgetmessagetime
、信頼できる時間を保証するために使用する必要があります。