Freigeben über


IGetAppTrackerData::GetApplicationProcesses-Methode (comsvcs.h)

Ruft Zusammenfassungsinformationen für alle Prozesse ab, die COM+-Anwendungen hosten, oder für eine angegebene Teilmenge dieser Prozesse.

Syntax

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

Parameter

[in] PartitionId

Eine Partitions-ID zum Filtern von Ergebnissen oder GUID_NULL für alle Partitionen.

[in] ApplicationId

Eine Anwendungs-ID zum Filtern von Ergebnissen oder GUID_NULL für alle Anwendungen.

[in] Flags

Eine Kombination von Flags aus der GetAppTrackerDataFlags-Enumeration , um Ergebnisse zu filtern und auszuwählen, welche Daten zurückgegeben werden. Die folgenden Flags werden unterstützt: GATD_INCLUDE_PROCESS_EXE_NAME, GATD_INCLUDE_LIBRARY_APPS, GATD_INCLUDE_SWC. Weitere Informationen finden Sie weiter unten in den Hinweisen.

[out] NumApplicationProcesses

Bei der Rückgabe die Anzahl der Prozesse, die den filterkriterien entsprechen, die durch PartitionId, ApplicationId und Flags angegeben sind.

[out] ApplicationProcesses

Bei der Rückgabe ein Array von ApplicationProcessSummary-Strukturen für die abgleichenden Prozesse.

Rückgabewert

Diese Methode kann die Standardrückgabewerte E_INVALIDARG und E_OUTOFMEMORY sowie die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die Methode wurde erfolgreich abgeschlossen, und die Ergebnisse befinden sich im ApplicationProcesses-Parameter .
S_FALSE
Die -Methode wurde erfolgreich abgeschlossen, aber es gab keine Prozesse, die den Filterkriterien entsprachen.

Hinweise

Die Parameter PartitionId, ApplicationId und Flags können verwendet werden, um Filterkriterien anzugeben, wenn der Aufrufer nur Informationen zu einer Teilmenge der nachverfolgten Prozesse möchte.

Wenn weder GATD_INCLUDE_LIBRARY_APPS noch GATD_INCLUDE_SWC in Flags festgelegt sind, enthalten die Ergebnisse nur COM+-Serveranwendungsinstanzen. Der ApplicationId-Parameter kann verwendet werden, um Instanzen einer bestimmten COM+-Serveranwendung und den PartitionId-Parameter für COM+-Serveranwendungen aus einer bestimmten Partition auszuwählen.

Wenn entweder GATD_INCLUDE_LIBRARY_APPS oder GATD_INCLUDE_SWC festgelegt sind, enthalten die Ergebnisse auch Prozesse, die COM+-Bibliotheksanwendungen bzw. Dienste ohne Komponentenkontexte hosten. In diesen Fällen filtern ApplicationId und PartitionId Prozesse basierend auf allen Anwendungen (der angeforderten Typen), die vom Prozess gehostet werden. Wenn ein Prozess mindestens eine Anwendung enthält, die den Kriterien entspricht, wird er in die Ergebnisse aufgenommen.

Angenommen, die folgenden COM+-Anwendungen sind installiert:

  • AppX ist eine Serveranwendung in PartitionA.
  • AppY ist eine Bibliotheksanwendung in PartitionA.
  • AppZ ist eine Serveranwendung in PartitionB.
Wenn PartitionId PartitionA angibt und GATD_INCLUDE_LIBRARY_APPS festgelegt ist:
  • Eine instance von AppX wird eingeschlossen.
  • Ein Clientprozess, der Komponenten aus AppY erstellt hat, wird eingeschlossen.
  • Eine instance von AppZ, die keine anderen COM+-Komponenten enthält, wird nicht eingeschlossen, da Sich AppZ nicht in der von PartitionId angegebenen Partition befindet.
  • Wenn es jedoch eine weitere instance von AppZ gibt, die aber auch Komponenten aus AppY erstellt hat, wird dieser Prozess eingeschlossen, obwohl sich die Serveranwendung nicht in der partitionsspezifischen Partition befindet. Dieser Prozess wäre nicht enthalten, wenn GATD_INCLUDE_LIBRARY_APPS nicht festgelegt wäre.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP mit SP2 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 mit SP1 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile comsvcs.h

Weitere Informationen

IGetAppTrackerData