Поделиться через


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).

QueryXML

Указывает формат XML текущего выполняющегося профиля и правильность работы профиля.

Запрос

Запрашивает свойства сеанса и поставщиков во всех профилях.

propget

Получает указанное свойство.

propput

Задает указанное свойство.

GetProviderNameFromGuid

Возвращает имя поставщика указанного GUID.

GetProviderGuidFromName

Возвращает 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

Путь к каталогу, в котором регистрируются предварительно объединенные файлы трассировки.

Интерфейсы