Método IGetAppTrackerData::GetApplicationProcesses (comsvcs.h)
Recupera informações resumidas para todos os processos que hospedam aplicativos COM+ ou para um subconjunto especificado desses processos.
Sintaxe
HRESULT GetApplicationProcesses(
[in] REFGUID PartitionId,
[in] REFGUID ApplicationId,
[in] DWORD Flags,
[out] ULONG *NumApplicationProcesses,
[out] ApplicationProcessSummary **ApplicationProcesses
);
Parâmetros
[in] PartitionId
Uma ID de partição para filtrar resultados ou GUID_NULL para todas as partições.
[in] ApplicationId
Uma ID do aplicativo para filtrar resultados ou GUID_NULL para todos os aplicativos.
[in] Flags
Uma combinação de sinalizadores da enumeração GetAppTrackerDataFlags para filtrar os resultados e selecionar quais dados são retornados. Há suporte para os seguintes sinalizadores: GATD_INCLUDE_PROCESS_EXE_NAME, GATD_INCLUDE_LIBRARY_APPS GATD_INCLUDE_SWC. Confira os comentários abaixo para obter mais informações.
[out] NumApplicationProcesses
No retorno, o número de processos que correspondem aos critérios de filtro especificados por PartitionId, ApplicationId e Flags.
[out] ApplicationProcesses
No retorno, uma matriz de estruturas ApplicationProcessSummary para os processos correspondentes.
Valor retornado
Esse método pode retornar os valores de retorno padrão E_INVALIDARG e E_OUTOFMEMORY, bem como os valores a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi concluído com êxito e os resultados estão no parâmetro ApplicationProcesses . |
|
O método foi concluído com êxito, mas não houve processos que correspondessem aos critérios de filtro. |
Comentários
Os parâmetros PartitionId, ApplicationId e Flags podem ser usados para especificar critérios de filtro se o chamador quiser apenas informações sobre um subconjunto de processos rastreados.
Se nem GATD_INCLUDE_LIBRARY_APPS nem GATD_INCLUDE_SWC estiverem definidos em Sinalizadores, os resultados incluirão apenas instâncias de aplicativo de servidor COM+. O parâmetro ApplicationId pode ser usado para selecionar instâncias de um aplicativo de servidor COM+ específico e o parâmetro PartitionId para aplicativos de servidor COM+ de uma partição específica.
Se GATD_INCLUDE_LIBRARY_APPS ou GATD_INCLUDE_SWC estiverem definidos, os resultados também incluirão processos que hospedam aplicativos de biblioteca COM+ ou contextos de Serviços sem Componentes, respectivamente. Nesses casos, ApplicationId e PartitionId filtram processos com base em todos os aplicativos (dos tipos solicitados) que o processo está hospedando. Se um processo incluir pelo menos um aplicativo que corresponda aos critérios, ele será incluído nos resultados.
Por exemplo, imagine que os seguintes aplicativos COM+ estão instalados:
- O AppX é um aplicativo de servidor no PartitionA.
- AppY é um aplicativo de biblioteca no PartitionA.
- AppZ é um aplicativo de servidor no PartitionB.
- Uma instância do AppX será incluída.
- Um processo de cliente que criou componentes do AppY será incluído.
- Uma instância do AppZ que não contém nenhum outro componente COM+ não será incluída porque o AppZ não está na partição especificada por PartitionId.
- No entanto, se houver outra instância do AppZ, mas que também tenha criado componentes do AppY, esse processo será incluído mesmo que o aplicativo de servidor não esteja na partição especificada por PartitionId. Esse processo não seria incluído se GATD_INCLUDE_LIBRARY_APPS não fosse definido.
Requisitos
Cliente mínimo com suporte | Windows XP com SP2 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 com SP1 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | comsvcs.h |