IControlManager
Представляет диспетчер windows Performance Recorder, который управляет трассировкой событий для сеансов Windows (ETW). Клиент передает коллекцию профилей с помощью интерфейса IProfileCollection , а менеджер может запускать, обновлять, отменять, сохранять, останавливать или запрашивать сеанс или поставщики трассировки событий Windows, описываемые каждым профилем. Клиент может передать указатель на обработчик IControlProgressHandler для получения обновлений об операции, выполняемой диспетчером.
Синтаксис
{
[propget, id(1), helpstring("property ControlProgressHandler")] HRESULT ControlProgressHandler
([out, retval] IControlProgressHandler** ppControlProgressHandler);
[propput, id(1), helpstring("property ControlProgressHandler")] HRESULT ControlProgressHandler
([in] IControlProgressHandler* pControlProgressHandler);
[id(2), helpstring("Start")] HRESULT Start
([in] IProfileCollection* pProfileCollection);
[id(3), helpstring("Update")] HRESULT Update
([in] IProfileCollection* pProfileCollection);
[id(4), helpstring("Cancel")] HRESULT Cancel
([in] IProfileCollection* pProfileCollection);
[id(5), helpstring("Save")] HRESULT Save
([in] BSTR bstrFileName,
[in] IProfileCollection* pProfileCollection,
[in] ITraceMergeProperties* pTraceMergeProperties);
[id(6), helpstring("Stop")] HRESULT Stop
([in] BSTR bstrFileName,
[in] IProfileCollection* pProfileCollection,
[in] ITraceMergeProperties* pTraceMergeProperties);
[id(7), helpstring("QueryXML")] HRESULT QueryXML
([out] BSTR* pbstrResults,
[in] VARIANT_BOOL fValidateRuntimeState);
[id(8), helpstring("Query")] HRESULT Query
([out] IProfileCollection** ppProfileCollection,
[in] VARIANT_BOOL fValidateRuntimeState);
[propget, id(9), helpstring("property TraceMergeTextHandler")] HRESULT TraceMergeTextHandler
([out, retval] ITraceMergeTextHandler** ppTraceMergeTextHandler);
[propput, id(9), helpstring("property TraceMergeTextHandler")] HRESULT TraceMergeTextHandler
([in] ITraceMergeTextHandler* pTraceMergeTextHandler);
[propget, id(10), helpstring("property TemporaryTraceDirectory")] HRESULT TemporaryTraceDirectory
([out, retval] BSTR* pbstrTemporaryTraceDirectory);
[propput, id(10), helpstring("property TemporaryTraceDirectory")] HRESULT TemporaryTraceDirectory
([in] BSTR bstrTemporaryTraceDirectory);
[id(11), helpstring("GetProviderNameFromGuid")] HRESULT GetProviderNameFromGuid
([out] BSTR* bstrProviderIdStr,
[in] REFGUID ProviderId);
[id(12), helpstring("GetProviderGuidFromName")] HRESULT GetProviderGuidFromName
([out] GUID* ProviderId,
[in] BSTR bstrProViderName);
};
Функции
В следующей таблице описаны функции, которые предоставляет этот интерфейс.
Функция | Описание |
---|---|
Начинает запись. |
|
Обновления коллекцию профилей. |
|
Останавливает запись без сохранения данных. |
|
Сохраняет запись, записанную в циклические буферы в памяти, в указанный файл журнала трассировки событий (ETL). |
|
Останавливает запись и сохраняет ее в указанный файл журнала трассировки событий (ETL). |
|
Указывает формат XML текущего выполняющегося профиля и правильность работы профиля. |
|
Запрашивает свойства сеанса и поставщиков во всех профилях. |
|
propget |
Получает указанное свойство. |
propput |
Задает указанное свойство. |
Возвращает имя поставщика указанного GUID. |
|
Возвращает GUID поставщика указанного имени. |
Свойства
В следующей таблице описаны параметры свойств, которые этот интерфейс может получить или задать.
Свойство | Параметры | Описание |
---|---|---|
ControlProgressHandler |
ppControlProgressHandler [out] |
Указатель на реализацию интерфейса IControlProgressHandler на стороне клиента. |
ControlProgressHandler |
pControlProgressHandler [in] |
Указатель на реализацию интерфейса IControlProgressHandler на стороне клиента. E_POINTER указывает на недопустимый указатель. |
TraceMergeTextHandler |
ppTraceMergeTextHandler [out] |
Указатель на текст и другие сведения о времени слияния в трассировке, внедренной интерфейсом ITraceMergeTextHandler . |
TraceMergeTextHandler |
pTraceMergeTextHandler [in] |
Указатель на текст и другие сведения о времени слияния в трассировке, внедренной интерфейсом ITraceMergeTextHandler . E_POINTER указывает на недопустимый указатель. |
TemporaryTraceDirectory |
pbstrTemporaryTraceDirectory [out] |
Указатель на путь к каталогу, в котором регистрируются предварительно объединенные файлы трассировки. По умолчанию используется папка %temp% . |
TemporaryTraceDirectory [in] |
bstrTemporaryTraceDirectory |
Путь к каталогу, в котором регистрируются предварительно объединенные файлы трассировки. |