IDebugProgramProvider2
Cette interface stockée permet au gestionnaire de débogage de session (SDM) pour obtenir des informations sur les programmes qui « ont été émis » via l'interface d' IDebugProgramPublisher2 .
IDebugProgramProvider2 : IUnknown
Remarques à l'intention des implémenteurs
Le moteur (DE) de débogage implémente cette interface pour fournir des informations sur les programmes en cours. Cette interface est stockée dans LE section du Registre à l'aide de metricProgramProvidermétriques, comme décrit dans Programmes d'assistance du Kit de développement logiciel pour le débogage.
Remarques pour les appelants
Fonction d' CoCreateInstance COM d'appel avec CLSID du fournisseur de programme qui est obtenu à partir de le Registre. Consultez l'exemple.
méthodes en commande de Vtable
Méthode |
Description |
---|---|
Obtient des informations sur les programmes exécutés, filtré de diverses manières. |
|
Obtient un nœud de programme, donné un identificateur de processus spécifique |
|
Génère un rappel pour le surveiller les événements de fournisseur associés à des genres spécifiques de processus. |
|
Génère des paramètres régionaux pour toutes les ressources spécifiques à une langue requises par le De. |
Notes
Normalement, un processus utilise cette interface pour déterminer sur les programmes s'exécutant dans ce processus.
Configuration requise
en-tête : msdbg.h
l'espace de noms : Microsoft.VisualStudio.Debugger.Interop
Assembly : Microsoft.VisualStudio.Debugger.Interop.dll
Exemple
IDebugProgramProvider2 *GetProgramProvider(GUID *pDebugEngineGuid)
{
// This is typically defined globally. For this example, it is
// defined here.
static const WCHAR strRegistrationRoot[] = L"Software\\Microsoft\\VisualStudio\\8.0Exp";
IDebugProgramProvider2 *pProvider = NULL;
if (pDebugEngineGuid != NULL) {
CLSID clsidProvider = { 0 };
::GetMetric(NULL,
metrictypeEngine,
*pDebugEngineGuid,
metricProgramProvider,
&clsidProvider,
strRegistrationRoot);
if (!IsEqualGUID(clsidProvider,GUID_NULL)) {
CComPtr<IDebugProgramProvider2> spProgramProvider;
spProgramProvider.CoCreateInstance(clsidProvider);
if (spProgramProvider != NULL) {
pProvider = spProgramProvider.Detach();
}
}
}
return(pProvider);
}
Voir aussi
Référence
Programmes d'assistance du Kit de développement logiciel pour le débogage