Présentation détaillée de l'appel de code non managé

L'appel de plateforme s'appuie sur les métadonnées pour localiser les fonctions exportées et marshaler leurs arguments au moment de l'exécution. L'illustration ci-dessous montre ce processus.

Appel de plateforme à une fonction DLL non managée

Appel de plateforme

Lorsque l'appel de plateforme appelle une fonction non managée, elle procède aux différentes actions suivantes :

  1. Elle localise la DLL qui contient la fonction.

  2. Elle charge la DLL dans la mémoire.

  3. Elle localise l'adresse de la fonction dans la mémoire et empile ses arguments, en marshalant si nécessaire les données.

    Notes

    La recherche et le chargement de la DLL ainsi que la recherche de l'adresse de la fonction en mémoire ne se produisent que lors du premier appel à la fonction.

  4. Elle transfère le contrôle à la fonction non managée.

L'appel de plateforme lève des exceptions générées par la fonction non managée à l'appelant managé.

Voir aussi

Concepts

Consommation de fonctions DLL non managées

Exemples d'appel de code non managé