Partager via


Méthode IGetAppTrackerData::GetApplicationProcesses (comsvcs.h)

Récupère des informations récapitulatives pour tous les processus qui hébergent des applications COM+ ou pour un sous-ensemble spécifié de ces processus.

Syntaxe

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

Paramètres

[in] PartitionId

ID de partition pour filtrer les résultats ou GUID_NULL pour toutes les partitions.

[in] ApplicationId

ID d’application pour filtrer les résultats ou GUID_NULL pour toutes les applications.

[in] Flags

Combinaison d’indicateurs de l’énumération GetAppTrackerDataFlags pour filtrer les résultats et sélectionner les données retournées. Les indicateurs suivants sont pris en charge : GATD_INCLUDE_PROCESS_EXE_NAME, GATD_INCLUDE_LIBRARY_APPS GATD_INCLUDE_SWC. Pour plus d’informations, consultez les remarques ci-dessous.

[out] NumApplicationProcesses

Au retour, nombre de processus qui correspondent aux critères de filtre spécifiés par PartitionId, ApplicationId et Flags.

[out] ApplicationProcesses

Au retour, tableau de structures ApplicationProcessSummary pour les processus correspondants.

Valeur retournée

Cette méthode peut retourner les valeurs de retour standard E_INVALIDARG et E_OUTOFMEMORY, ainsi que les valeurs suivantes.

Code de retour Description
S_OK
La méthode s’est terminée correctement et les résultats se trouvent dans le paramètre ApplicationProcesses .
S_FALSE
La méthode s’est terminée correctement, mais aucun processus ne correspondait aux critères de filtre.

Notes

Les paramètres PartitionId, ApplicationId et Flags peuvent être utilisés pour spécifier des critères de filtre si l’appelant souhaite uniquement des informations sur un sous-ensemble de processus suivis.

Si ni GATD_INCLUDE_LIBRARY_APPS ni GATD_INCLUDE_SWC ne sont définis dans Indicateurs, les résultats incluent uniquement les instances d’application de serveur COM+. Le paramètre ApplicationId peut être utilisé pour sélectionner des instances d’une application serveur COM+ spécifique, et le paramètre PartitionId pour les applications serveur COM+ à partir d’une partition spécifique.

Si GATD_INCLUDE_LIBRARY_APPS ou GATD_INCLUDE_SWC sont définis, les résultats incluent également les processus qui hébergent des applications de bibliothèque COM+ ou des contextes services sans composants, respectivement. Dans ce cas, ApplicationId et PartitionId filtrent les processus en fonction de toutes les applications (des types demandés) que le processus héberge. Si un processus inclut au moins une application qui correspond aux critères, il est inclus dans les résultats.

Par exemple, imaginez que les applications COM+ suivantes sont installées :

  • AppX est une application serveur dans PartitionA.
  • AppY est une application de bibliothèque dans PartitionA.
  • AppZ est une application serveur dans PartitionB.
Si PartitionId spécifie PartitionA et GATD_INCLUDE_LIBRARY_APPS est défini :
  • Une instance d’AppX sera incluse.
  • Un processus client qui a créé des composants à partir d’AppY sera inclus.
  • Une instance d’AppZ ne contenant aucun autre composant COM+ ne sera pas incluse, car AppZ ne se trouve pas dans la partition spécifiée par PartitionId.
  • Toutefois, s’il existe une autre instance d’AppZ, mais qui a également créé des composants à partir d’AppY, ce processus est inclus même si l’application serveur ne se trouve pas dans la partition spécifiée par PartitionId. Ce processus ne serait pas inclus si GATD_INCLUDE_LIBRARY_APPS n’était pas défini.

Spécifications

   
Client minimal pris en charge Windows XP avec SP2 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 avec SP1 [applications de bureau uniquement]
Plateforme cible Windows
En-tête comsvcs.h

Voir aussi

IGetAppTrackerData