IGetAppTrackerData::GetApplicationsInProcess 方法 (comsvcs.h)
擷取裝載於單一進程中之所有 COM+ 應用程式的摘要資訊,或針對這些應用程式的指定子集。
語法
HRESULT GetApplicationsInProcess(
[in] REFGUID ApplicationInstanceId,
[in] DWORD ProcessId,
[in] REFGUID PartitionId,
[in] DWORD Flags,
[out] ULONG *NumApplicationsInProcess,
[out] ApplicationSummary **Applications
);
參數
[in] ApplicationInstanceId
應用程式實例 GUID,可唯一識別要選取的追蹤進程,或改為使用 ProcessId 參數進行選取時GUID_NULL。
[in] ProcessId
識別要選取之進程的進程標識碼,如果 ApplicationInstanceId 會改為用於選取,則為 0。
[in] PartitionId
要篩選結果的數據分割標識碼,或針對所有分割區GUID_NULL。
[in] Flags
GetAppTrackerDataFlags 列舉中的旗標組合,以篩選結果,並選取傳回的數據。 支援下列旗標:GATD_INCLUDE_LIBRARY_APPS、GATD_INCLUDE_SWC、GATD_INCLUDE_APPLICATION_NAME。 如需詳細資訊,請參閱下面的。
[out] NumApplicationsInProcess
傳回時,程式中符合 PartitionId 和 Flags 所指定篩選準則的應用程式數目。
[out] Applications
傳回時,符合應用程式之 ApplicationSummary 結構的陣列。
傳回值
這個方法可以傳回標準傳回值E_INVALIDARG和E_OUTOFMEMORY,以及下列值。
傳回碼 | 描述 |
---|---|
|
方法已順利完成,且結果位於 Applications 參數中。 |
|
方法已順利完成,但沒有任何程式符合篩選準則。 |
|
指定的進程不存在,或未裝載任何追蹤的 COM+ 應用程式。 |
備註
進程可由其應用程式實例標識碼或其進程標識碼選取,但不能同時選取兩者。 依應用程式實例識別碼選取通常是慣用的,因為進程標識碼可能會在進程終止之後重複使用。 不過,如果您從其他來源取得進程標識碼,例如您程式的命令行自變數,依進程標識碼選取可能會很有用。
如果旗標中未設定GATD_INCLUDE_LIBRARY_APPS或 GATD_INCLUDE_SWC,則結果中只會包含 COM+ 伺服器應用程式。 如果已設定GATD_INCLUDE_LIBRARY_APPS,則程式中也會包含 COM+ 連結庫應用程式。 如果已設定GATD_INCLUDE_SWC,而且進程裝載一或多個沒有元件的服務內容,則結果也會包含具有SWC內容摘要的單一虛擬應用程式專案。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 具有 SP2 的 Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 SP1 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | comsvcs.h |