IGetAppTrackerData::GetComponentDetails 方法 (comsvcs.h)

擷取進程中裝載之單一 COM+ 元件的詳細資訊。

語法

HRESULT GetComponentDetails(
  [in]  REFGUID                  ApplicationInstanceId,
  [in]  DWORD                    ProcessId,
  [in]  REFCLSID                 Clsid,
  [in]  DWORD                    Flags,
  [out] ComponentSummary         *Summary,
  [out] ComponentStatistics      *Statistics,
  [out] ComponentHangMonitorInfo *HangMonitorInfo
);

參數

[in] ApplicationInstanceId

應用程式實例 GUID,可唯一識別要選取的追蹤進程,或GUID_Null 是否將 ProcessId 參數用於選取。

[in] ProcessId

識別要選取之進程的進程識別碼,如果 ApplicationInstanceId 將改為用於選取,則為 0。

[in] Clsid

元件的 CLSID。

[in] Flags

GetAppTrackerDataFlags列舉中的旗標組合,以選取要傳回的資料。 支援下列旗標:GATD_INCLUDE_CLASS_NAME (擷取摘要) ,GATD_INCLUDE_APPLICATION_NAME (擷取摘要) 。

[out] Summary

傳回時,具有元件摘要資訊的 ComponentSummary 結構。 此參數可以是 Null

[out] Statistics

傳回時,具有元件統計資料的 ComponentStatistics 結構。 此參數可以是 Null

[out] HangMonitorInfo

傳回時, ComponentHangMonitorInfo 結構具有元件的停止回應監視組態。 此參數可以是 Null

傳回值

這個方法可以傳回標準傳回值E_INVALIDARG和E_OUTOFMEMORY,以及下列值。

傳回碼 描述
S_OK
已成功完成命令。
COMADMIN_E_APP_NOT_RUNNING
指定的進程不存在,或未裝載任何追蹤的 COM+ 應用程式。
COMADMIN_E_OBJECT_DOES_NOT_EXIST
指定的元件不存在於指定的進程中。

備註

進程可由其應用程式實例識別碼或其進程識別碼來選取,但不能同時選取兩者。 依應用程式實例識別碼選取通常是慣用的,因為進程識別碼可能會在進程終止之後重複使用。 不過,如果您從其他來源取得進程識別碼,例如程式的命令列引數,則依進程識別碼選取可能會很有用。

您可以傳遞SummaryStatisticsHangMonitorInfo的非Null值,以要求元件可用的任何或所有資訊。 至少其中一個參數必須是非Null

規格需求

   
最低支援的用戶端 具有 SP2 的 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 SP1 [僅限傳統型應用程式]
目標平台 Windows
標頭 comsvcs.h

另請參閱

IGetAppTrackerData