2008-09-24 25 views
1

如果我在Windows中使用CreateEvent創建事件,如何使用Visual Studio中的調試器來檢查該事件是否發送信號? CreateEvent返回一個句柄,該句柄不能訪問許多信息。在我致電WaitForSingleObject()之前,我想在進入該功能之前檢查事件是否發出信號。在Windows中使用事件進行調試

回答

1

如果發出事件並且使用WaitForSingleObject(),它將立即返回。此外,您可以以等待時間0調用WaitForSingleObject()以確定它是否被髮送。但是,這不應該是必要的 - 在CreateEvent()調用中設置初始狀態(到目前爲止您所遇到的問題尚不清楚)。

4

使用handle命令。以下是樣本

以下命令顯示有關句柄0x8的詳細信息。

0:000> !handle 8 f 

手柄8 類型事件 屬性0 GrantedAccess 0x100003: 同步 QueryState,ModifyState HandleCount 2 PointerCount 3 名稱 對象特定信息 事件類型自動復位 事件等待

+0

注該命令用於Windows調試工具(WinDbg/ntsd/cdb/kd),而不是Visual Studio。 DTW位於http://www.microsoft.com/whdc/devtools/debugging/default.mspx – bk1e 2008-09-25 05:41:50