Método IGetAppTrackerData::GetComponentsInProcess (comsvcs.h)
Recupera informações resumidas para todos os componentes COM+ hospedados em um único processo ou para um subconjunto especificado desses componentes.
Sintaxe
HRESULT GetComponentsInProcess(
[in] REFGUID ApplicationInstanceId,
[in] DWORD ProcessId,
[in] REFGUID PartitionId,
[in] REFGUID ApplicationId,
[in] DWORD Flags,
[out] ULONG *NumComponentsInProcess,
[out] ComponentSummary **Components
);
Parâmetros
[in] ApplicationInstanceId
O GUID da instância do aplicativo que identifica exclusivamente o processo rastreado a ser selecionado ou GUID_NULL se o parâmetro ProcessId será usado para seleção.
[in] ProcessId
A ID do processo que identifica o processo a ser selecionado ou 0 se o parâmetro ApplicationInstanceId for usado para seleção.
[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_LIBRARY_APPS, GATD_INCLUDE_SWC, GATD_INCLUDE_CLASS_NAME GATD_INCLUDE_APPLICATION_NAME. Consulte Comentários abaixo para obter mais informações.
[out] NumComponentsInProcess
No retorno, o número de componentes no processo que correspondem aos critérios de filtro especificados por PartitionId, ApplicationId e Flags.
[out] Components
No retorno, uma matriz de estruturas ComponentSummary para os componentes correspondentes.
Retornar valor
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 Components . |
|
O método foi concluído com êxito, mas não havia componentes que correspondessem aos critérios de filtro. |
|
O processo especificado não existe ou não está hospedando nenhum aplicativo COM+ rastreado. |
Comentários
Um processo pode ser selecionado por sua ID de instância de aplicativo ou sua ID de processo, mas não ambos. A seleção por ID da instância do aplicativo geralmente é preferencial, pois as IDs do processo podem ser reutilizados após o término de um processo. No entanto, a seleção por ID do processo poderá ser útil se você obtiver a ID do processo de alguma outra fonte, como um argumento de linha de comando para o programa.
Se nem GATD_INCLUDE_LIBRARY_APPS nem GATD_INCLUDE_SWC estiverem definidos em Sinalizadores, somente os componentes do aplicativo de servidor COM+ serão incluídos nos resultados. Se GATD_INCLUDE_LIBRARY_APPS estiver definido, os componentes de aplicativos de biblioteca COM+ no processo, se houver, também serão incluídos. Se GATD_INCLUDE_SWC estiver definido, os resultados também incluirão entradas para contextos de Serviços sem Componentes.
Se ApplicationId for usado para especificar um aplicativo (ele não está definido como GUID_NULL), os sinalizadores GATD_INCLUDE_LIBRARY_APPS e GATD_INCLUDE_SWC não serão significativos e não será válido usá-los. Os componentes do aplicativo especificado serão retornados, independentemente do tipo desse aplicativo.
Requisitos
Requisito | Valor |
---|---|
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 |