Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция CloseTrace закрывает сеанс обработки трассировки, созданный с помощью OpenTrace.
Синтаксис
ETW_APP_DECLSPEC_DEPRECATED ULONG WMIAPI CloseTrace(
[in] PROCESSTRACE_HANDLE TraceHandle
);
Параметры
[in] TraceHandle
Обработка сеанса обработки трассировки для закрытия. Функция OpenTrace возвращает этот дескриптор.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ERROR_SUCCESS.
Если функция завершается ошибкой, возвращаемое значение является одним из системных кодов ошибок. Ниже приведены некоторые распространенные ошибки и их причины.
ERROR_INVALID_HANDLE
Верно одно из условий ниже:
- TraceHandle равно 0.
- TraceHandleINVALID_PROCESSTRACE_HANDLE.
- TraceHandle не является допустимым дескриптором.
ERROR_BUSY
До Windows Vista невозможно закрыть трассировку до завершения функции ProcessTrace .
ERROR_CTX_CLOSE_PENDING
Звонок был успешным. Функция ProcessTrace будет остановлена после обработки всех событий в режиме реального времени в буферах (она не будет получать новые события).
Замечания
Потребители вызывают эту функцию, чтобы закрыть дескриптор трассировки, возвращаемый OpenTrace.
Это важно
Не используйте эту функцию для закрытия дескриптора трассировки, возвращаемого StartTrace.
Если вы обрабатываете события из файла журнала, вызовите эту функцию только после возврата функции ProcessTrace . Однако при обработке событий в режиме реального времени можно вызвать эту функцию перед возвратом ProcessTrace . (Другой способ остановить обработку трассировки — возврат false из BufferCallback.)
При вызове этой функции перед возвратом ProcessTrace функция CloseTrace возвращает ERROR_CTX_CLOSE_PENDING. Код ERROR_CTX_CLOSE_PENDING указывает, что вызов функции CloseTrace выполнен успешно; Функция ProcessTrace перестанет обрабатывать события после обработки всех ранее очередных событий (ProcessTrace не получит никаких новых событий после вызова функции CloseTrace ). Вы можете вызвать функцию CloseTrace из обратного вызова BufferCallback, EventCallback или EventClassCallback .
До Windows Vista: Вы можете вызывать CloseTrace только после возврата ProcessTrace .
Примеры
Пример использования CloseTrace см. в разделе "Получение данных событий с помощью TDH".
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows 2000 Профессиональный [классические приложения | Приложения UWP] |
| минимальный поддерживаемый сервер | Windows 2000 Server [классические приложения | Приложения UWP] |
| целевая платформа | Виндоус |
| Header | evntrace.h |
| Library | AdvAPI32.Lib Sechost.lib в Windows 8.1 и Windows Server 2012 R2; Advapi32.lib в Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista и Windows XP |
| DLL | Sechost.dll в Windows 8.1 и Windows Server 2012 R2; Advapi32.dll в Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista и Windows XP |