共用方式為


IDataCollectorSet::Commit 方法 (pla.h)

儲存、更新或驗證數據收集器集合。 您也可以使用這個方法來排清追蹤會話。

語法

HRESULT Commit(
  [in]  BSTR       name,
  [in]  BSTR       server,
  [in]  CommitMode mode,
  [out] IValueMap  **validation
);

參數

[in] name

用來儲存資料收集器集合的唯一名稱。 名稱的格式為 [Namespace]Name。 如需詳細資料,請參閱<備註>。

[in] server

您要儲存集合的電腦。 您可以指定電腦名稱、完整功能變數名稱或IP位址, (IPv4 或 IPv6 格式) 。 如果 為 NULL,則會將集合儲存到本機電腦。

[in] mode

指出您要儲存、更新、排清或驗證資料收集器集合。 如需可能的值,請參閱 CommitMode 列舉。

[out] validation

您用來擷取其值無效或忽略之每個屬性的驗證錯誤 IValueMap 介面。 如果沒有錯誤或警告, IValueMap::Count 屬性為零。

傳回值

如果方法呼叫成功,則傳回S_OK。 您必須檢查值對應是否有錯誤, (請參閱) 。 如果方法傳回S_OK且沒有任何驗證錯誤,則已成功認可集合。 下表顯示呼叫此方法時可能的錯誤值。

傳回碼/值 Description
E_ACCESSDENIED
用戶必須以系統管理員身分執行。
E_NOINTERFACE
例如,如果您在 Windows Vista) 之前執行作業系統的電腦上認可數據收集器時指定了系統命名空間,則不支援指定的命名空間 (。
HRESULT_FROM_WIN32 (RPC_S_SERVER_UNAVAILABLE)
RPC 伺服器無法使用。 方法無法從遠端儲存數據收集器集合。 若要從遠端認可至執行 Windows Vista 的電腦,請在遠端電腦上的 Windows 防火牆設定 中啟用效能記錄和警示。
PLA_E_DCS_ALREADY_EXISTS
0x803000B7
您嘗試認可新的集合,但已存在具有指定名稱的集合。

備註

如果您儲存集合,請在呼叫 IDataCollectorSet::Query 方法來擷取集合時,使用指定的名稱和伺服器參數值。

name 參數可以包含選擇性命名空間;不過,您應該一律指定 命名空間。 如果您未指定命名空間,PLA 會針對執行 Windows Vista 的電腦使用「服務」,並在 Windows Vista 之前執行作業系統的電腦使用「舊版」。 下表列出可能的命名空間值。

命名空間 描述
自動設定 包含 ETW AutoLogger 工作階段。 收集器會在電腦啟動時啟動,無法停止,且狀態為未定義。
舊版 與服務相同,但在執行 Windows Vista 之前作業系統的電腦上。
服務 包含使用者建立的所有數據收集器集合。 這些集合可以排程,並可設定為以任何人身分執行。 使用者需要以 批次作業 帳戶身分登入, (請參閱系統管理工具、本機安全策略、本機原則、用戶權力指派) 。 如果您未指定認證,如果使用者是系統管理員) ,則此集合會以 LocalSystem (的形式執行。
工作階段 包含 Windows (ETW 的事件 追蹤) 追蹤工作階段。 無法排程這些集合。 如果您使用此命名空間,集合必須只包含一個數據收集器,而且必須是追蹤資料收集器。
系統 包含無法排程的唯讀數據收集器集合;不過,您可以手動啟動這些集合。 如果您未指定認證,則集合會以目前使用者身分執行。
 

請注意,服務命名空間可以在 Windows Vista 之前執行作業系統的電腦上取代舊版命名空間。

若要判斷發生的驗證錯誤,請擷取值對應集合中每個錯誤的 IValueMapItem 介面。 IValueMapItem::Key 屬性包含錯誤的元素 XPath,例如 /AlertDataCollector/TaskArguments。 IValueMapItem::Value 屬性包含 HRESULT 值,可能是錯誤或警告, (成功程式代碼) 。 IValueMapItem::D escription 屬性包含與錯誤相關聯的消息正文。

一般而言,任何發生的錯誤都會是值對應集合中下列其中一個 HRESULT 值。

錯誤 Description
PLA_S_PROPERTY_IGNORED 不使用此屬性。 PLA 會使用此警告來停用其 UI 中的專案,讓使用者知道會忽略 屬性。
PLA_E_PROPERTY_CONFLICT 屬性與其他屬性衝突,例如 LogAppendLogCircular 都是 VARIANT_TRUE

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 pla.h
Dll Pla.dll

另請參閱

IDataCollectorSet

IDataCollectorSet::D elete

IDataCollectorSet::Query