Share via


ContinueDebugEvent 函式 (debugapi.h)

可讓偵錯工具繼續先前回報偵錯事件的執行緒。

語法

BOOL ContinueDebugEvent(
  [in] DWORD dwProcessId,
  [in] DWORD dwThreadId,
  [in] DWORD dwContinueStatus
);

參數

[in] dwProcessId

要繼續之進程的進程識別碼。

[in] dwThreadId

要繼續之執行緒的執行緒識別碼。 進程識別碼和執行緒識別碼的組合必須識別先前回報偵錯事件的執行緒。

[in] dwContinueStatus

繼續報告偵錯事件之執行緒的選項。

意義
DBG_CONTINUE
0x00010002L
如果 dwThreadId 參數先前指定的執行緒回報EXCEPTION_DEBUG_EVENT偵錯事件,則函式會停止所有例外狀況處理,並繼續執行緒,並將例外狀況標示為已處理。 針對任何其他偵錯事件,此旗標只會繼續執行緒。
DBG_EXCEPTION_NOT_HANDLED
0x80010001L
如果 dwThreadId 先前所指定的執行緒回報EXCEPTION_DEBUG_EVENT偵錯事件,函式會繼續例外狀況處理。 如果這是第一次發生例外狀況事件,則會使用結構化例外狀況處理常式的搜尋和分派邏輯;否則,進程會終止。 針對任何其他偵錯事件,此旗標只會繼續執行緒。
DBG_REPLY_LATER
0x40010001L
在Windows 10版本 1507 或更新版本中支援,此旗標會導致dwThreadId在目標繼續之後重新執行現有的中斷事件。 藉由針對 dwThreadId 呼叫 SuspendThread API,偵錯工具就可以繼續進程中的其他執行緒,稍後再返回中斷。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

只有使用CreateProcess函式建立dwProcessId的執行緒可以呼叫ContinueDebugEvent

ContinueDebugEvent函式成功之後,指定的執行緒會繼續。 視線程先前報告的偵錯事件而定,會發生不同的動作。 如果繼續執行緒先前回報EXIT_THREAD_DEBUG_EVENT偵錯事件, ContinueDebugEvent 會關閉偵錯工具對執行緒必須處理的控制碼。 如果繼續執行緒先前回報EXIT_PROCESS_DEBUG_EVENT偵錯事件, ContinueDebugEvent 會關閉偵錯工具對進程和執行緒必須處理的控制碼。

範例

如需範例,請參閱 撰寫偵錯工具的 Main 迴圈

需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 debugapi.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

CreateProcess

偵錯事件

偵錯函式