Функция ContinueDebugEvent

Функция ContinueDebugEvent дает возможность отладчику оставить поток, который предварительно сообщил о событии отладки.

Синтаксис

BOOL ContinueDebugEvent(
  DWORD dwProcessId,
  DWORD dwThreadId,
  DWORD dwContinueStatus
);

Параметры

dwProcessId

[in] Дескриптор остающегося процесса.

dwThreadId

[in] Дескриптор остающегося потока. Комбинация идентификатора процесса и идентификатора потока должна идентифицировать поток, который предварительно сообщил о событии отладки.

dwContinueStatus

[in] Опции остающегося потока, который сообщил о событии отладки.

Если для этого параметра устанавливается флажок DBG_CONTINUE, а поток, указанный параметром dwThreadId предварительно сообщил об отлаживающем событии EXCEPTION_DEBUG_EVENT, то функция останавливает всякую обработку исключений и оставляет поток. Для любого другого события отладки, этот флажок просто оставляет поток.

Если для этого параметра устанавливается флажок DBG_EXCEPTION_NOT_HANDLED, а поток, заданный в dwThreadId предварительно сообщил об отлаживающем событии EXCEPTION_DEBUG_EVENT, то функция продолжает обработку исключений. Если это событие первой случайной исключительной ситуации , используется логика поиска и распределения структурного обработчика исключительных ситуаций; в противном случае, процесс завершается. Для любого другого события отладки, этот флажок просто оставляет поток.

Возвращаемые значения

Если функция завершается успешно, возвращаемое значение не нуль.

Если функция завершается ошибкой, возвращаемое значение равняется нулю. Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError.

Замечания

Только поток, который создавался dwProcessId  функцией CreateProcess, может вызвать ContinueDebugEvent. После того, как функция ContinueDebugEvent завершается успешно, указанный поток остается. В зависимости от события отладки, предварительно сообщенного потоком, совершаются другие действия. Если оставшийся поток предварительно сообщил, что отлаживающее событие EXIT_THREAD_DEBUG_EVENT, функция ContinueDebugEvent закрывает дескриптор, который отладчик  относит к потоку. Если продолжающий работу поток предварительно сообщил, что отлаживающее событие EXIT_PROCESS_DEBUG_EVENT, ContinueDebugEvent закрывает дескрипторы отладчика, которые принадлежат  процессу и  потоку.

 Код примера

Пример, см. в статье Запись основного цикла отладчика.

Смотри также

Обзор Основы отладки, Функции, используемые при отладке, CreateProcess

Размещение и совместимость ContinueDebugEvent

К

Windows XP

Да с SP1

л

Windows 2000 Professional

Да

и

Windows NT  Workstation

Да

е

Windows Me

Да

н

Windows 98

Да

т

Windows 95

Да

 
С

Windows Server 2003

Да

е Windows 2000 Server Да
р Windows NT Server Да 
в    
е    
р    

Используемая библиотека

Kernel32.lib

Используемая DLL kernel32.dll
 Заголовочный файл  

- объявлено в

Winbase.h

 - включено в

Windows.h

 Unicode

Нет

 Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz