0
我正在編寫一個註冊套接字事件的日誌記錄功能。我遇到的問題是,即使我在MSG
結構中有time
事件,當我撥打PeekMessage
時,後續致電DispatchMessage
的呼叫最終將由WindowProc
處理,它不會收到time
作爲參數。正確使用MSG中的時間的方法
我用來記錄時間的「解決方案」包括在我的Windows應用程序的主循環中檢測套接字事件,其中PeekMessage
發生。
這將是正確的方法來做到這一點?我寧願不必將日誌記錄特定的邏輯添加到其他常規例程中。
進一步閱讀:https://blogs.msdn.microsoft.com/oldnewthing/20090618-00/?p=17843 – theB
謝謝雷米。但是,我仍然沒有看到這將如何讓我在主循環之外移動特定邏輯,因爲這意味着在另一個地方調用「GetMessage」,在另一個地方調用「GetMessageTime」(特定邏輯位於此處)。那麼事件和時間之間的對應關係就不能保證。 –
您的原始解決方案是在主循環中調用PeekMessage,並從MSG結構中獲取時間戳。 'GetMessageTime'返回相同的時間戳。那麼在你的'WindowProc'處理程序中調用'GetMessageTime'有什麼問題? –