IControlManager
代表 Windows Performance Recorder 管理員,控制 Windows (ETW) 會話的事件追蹤。 用戶端會使用 IProfileCollection 介面傳遞設定檔集合,而且管理員可以啟動、更新、取消、儲存、停止或查詢每個設定檔所描述的 ETW 會話或提供者。 用戶端可以傳入 IControlProgressHandler 處理常式的指標,以接收管理員執行之作業的相關更新。
Syntax
{
[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 |
記錄預先合併追蹤檔案之目錄的路徑。 |