다음을 통해 공유


IGetAppTrackerData::GetApplicationProcesses 메서드(comsvcs.h)

COM+ 애플리케이션을 호스팅하는 모든 프로세스 또는 이러한 프로세스의 지정된 하위 집합에 대한 요약 정보를 검색합니다.

구문

HRESULT GetApplicationProcesses(
  [in]  REFGUID                   PartitionId,
  [in]  REFGUID                   ApplicationId,
  [in]  DWORD                     Flags,
  [out] ULONG                     *NumApplicationProcesses,
  [out] ApplicationProcessSummary **ApplicationProcesses
);

매개 변수

[in] PartitionId

결과를 필터링하거나 모든 파티션에 대해 GUID_NULL 파티션 ID입니다.

[in] ApplicationId

결과를 필터링하거나 모든 애플리케이션에 대해 GUID_NULL 애플리케이션 ID입니다.

[in] Flags

결과를 필터링하고 반환되는 데이터를 선택하는 GetAppTrackerDataFlags 열거형의 플래그 조합입니다. 지원되는 플래그는 GATD_INCLUDE_PROCESS_EXE_NAME, GATD_INCLUDE_LIBRARY_APPS, GATD_INCLUDE_SWC. 자세한 내용은 아래 설명을 참조하세요.

[out] NumApplicationProcesses

반환될 때 PartitionId, ApplicationIdFlags로 지정된 필터 조건과 일치하는 프로세스의 수입니다.

[out] ApplicationProcesses

반환되는 경우 일치하는 프로세스에 대한 ApplicationProcessSummary 구조체의 배열입니다.

반환 값

이 메서드는 다음 값뿐만 아니라 E_INVALIDARG 및 E_OUTOFMEMORY 표준 반환 값을 반환할 수 있습니다.

반환 코드 설명
S_OK
메서드가 성공적으로 완료되고 결과는 ApplicationProcesses 매개 변수에 있습니다.
S_FALSE
메서드가 성공적으로 완료되었지만 필터 조건과 일치하는 프로세스가 없었습니다.

설명

호출자가 추적된 프로세스의 하위 집합에 대한 정보만 원하는 경우 PartitionId, ApplicationIdFlags 매개 변수를 사용하여 필터 조건을 지정할 수 있습니다.

플래그에 GATD_INCLUDE_LIBRARY_APPS 또는 GATD_INCLUDE_SWC 설정되지 않은 경우 결과에는 COM+ 서버 애플리케이션 인스턴스만 포함됩니다. ApplicationId 매개 변수를 사용하여 특정 COM+ 서버 애플리케이션의 인스턴스와 특정 파티션에서 COM+ 서버 애플리케이션에 대한 PartitionId 매개 변수를 선택할 수 있습니다.

GATD_INCLUDE_LIBRARY_APPS 또는 GATD_INCLUDE_SWC 설정된 경우 결과에는 각각 COM+ 라이브러리 애플리케이션 또는 구성 요소 없는 서비스 컨텍스트를 호스팅하는 프로세스도 포함됩니다. 이러한 경우 ApplicationIdPartitionId 는 프로세스가 호스팅하는 모든 애플리케이션(요청된 형식)을 기반으로 프로세스를 필터링합니다. 프로세스에 조건과 일치하는 애플리케이션이 하나 이상 포함된 경우 결과에 포함됩니다.

예를 들어 다음 COM+ 애플리케이션이 설치되어 있다고 상상해 보세요.

  • AppX는 PartitionA의 서버 애플리케이션입니다.
  • AppY는 PartitionA의 라이브러리 애플리케이션입니다.
  • AppZ는 PartitionB의 서버 애플리케이션입니다.
PartitionId가 PartitionA를 지정하고 GATD_INCLUDE_LIBRARY_APPS 설정된 경우:
  • AppX의 instance 포함됩니다.
  • AppY에서 구성 요소를 만든 클라이언트 프로세스가 포함됩니다.
  • AppZ가 PartitionId로 지정된 파티션에 없으므로 다른 COM+ 구성 요소가 포함되지 않은 AppZ의 instance 포함되지 않습니다.
  • 그러나 AppZ의 다른 instance 있지만 AppY에서 구성 요소를 만든 경우 서버 애플리케이션이 PartitionId로 지정된 파티션에 없더라도 이 프로세스가 포함됩니다. GATD_INCLUDE_LIBRARY_APPS 설정되지 않은 경우 이 프로세스가 포함되지 않습니다.

요구 사항

   
지원되는 최소 클라이언트 WINDOWS XP SP2 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 SP1 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 comsvcs.h

추가 정보

IGetAppTrackerData