Partager via


Démarrage et attachement de profileurs non basés sur le Registre

À partir du .NET Framework version 4, vous pouvez attacher des profileurs au moment du démarrage de l'application (chargement au démarrage) et pendant que les applications sont en cours d'exécution (chargement par attachement). Ces deux possibilités permettent de démarrer des profileurs qui n'ont pas été inscrits en tant que composants COM.

Ces deux méthodes utilisent des protocoles différents pour le démarrage des profileurs et sont décrites dans les sections suivantes.

Profileurs à chargement au démarrage

Un profileur à chargement au démarrage est chargé lorsque l'application à profiler démarre. Avant le .NET Framework 4, le chargement au démarrage était la seule façon de charger un profileur. Le profileur devait être inscrit et était localisé via les valeurs des variables d'environnement suivantes :

  • COR_ENABLE_PROFILING=1

  • COR_PROFILER={CLSID du profileur}

Le Common Language Runtime (CLR) utilisait le CLSID de COR_PROFILER pour localiser le profileur dans le HKEY_CLASSES_ROOT du Registre.

À compter du .NET Framework 4, vous pouvez continuer à inscrire votre profileur. Toutefois, une autre variable d'environnement est vérifiée avant la recherche dans le Registre :

  • COR_PROFILER_PATH=chemin d'accès complet de la DLL du profileur

Si COR_PROFILER_PATH est présent, sa valeur est utilisée pour localiser le profileur, et la recherche dans le Registre est ignorée.

Remarques :

  • COR_PROFILER_PATH est facultatif. Si vous ne spécifiez pas COR_PROFILER_PATH, le CLSID du profileur est utilisé pour rechercher son chemin d'accès dans le Registre.

  • Si vous spécifiez COR_PROFILER_PATH et inscrivez votre profileur, COR_PROFILER_PATH est prioritaire. Si COR_PROFILER_PATH pointe vers un chemin d'accès non valide, le profileur ne peut pas être chargé même s'il est inscrit.

  • COR_PROFILER est toujours requis. Si vous spécifiez COR_PROFILER_PATH, la recherche dans le Registre est ignorée. Toutefois, le CLSID de COR_PROFILER est toujours requis pour l'appel CreateInstance.

Profileurs à chargement par attachement

À partir du .NET Framework 4, vous pouvez attacher un profileur à une application en cours d'exécution. Pour plus d'informations sur cette fonctionnalité, consultez Attachement au profileur et détachement du profileur. Un profileur à chargement par attachement utilise le paramètre wszProfilerPath de la méthode ICLRProfiling::AttachProfiler pour rechercher l'emplacement du fichier DLL du profileur. Si wszProfilerPath est null, le runtime essaie de localiser le profileur en recherchant le CLSID spécifié dans le paramètre pClsidProfiler.

Voir aussi

Concepts

Vue d'ensemble du profilage

Autres ressources

Profilage (Référence des API non managées)

Référence des API non managées