Identification des fonctions des DLL
L'identité d'une fonction DLL est composée des éléments suivants :
ordinal ou nom de la fonction ;
nom du fichier DLL dans lequel l'implémentation figure.
Par exemple, la spécification de la fonction MessageBox dans User32.dll identifie la fonction (MessageBox) et son emplacement (User32.dll, User32 ou user32). L'interface de programmation d'applications de Microsoft Windows (API Win32) peut comporter deux versions de chaque fonction qui gère les caractères et les chaînes : une version ANSI pour les caractères à 1 octet et une version Unicode pour les caractères à 2 octets. Lorsque le jeu de caractères représenté par le champ de CharSet n'est pas spécifié, sa valeur par défaut est ANSI. Certaines fonctions peuvent posséder plus de deux versions.
MessageBoxA est le point d'entrée ANSI de la fonction MessageBox ; MessageBoxW correspond à la version Unicode. Vous pouvez obtenir une liste de noms de fonctions pour une DLL spécifique, telle que user32.dll, en exécutant une variété d'outils de ligne de commande. Par exemple, vous pouvez utiliser dumpbin /exports user32.dll ou link /dump /exports user32.dll pour obtenir des noms de fonctions.
Vous pouvez renommer une fonction non managée à votre convenance dans votre code à partir du moment où vous mappez le nouveau nom au point d'entrée d'origine dans la DLL. Pour obtenir des instructions sur l'attribution d'un nouveau nom à une fonction DLL non managée dans du code source managé, consultez Spécification d'un point d'entrée.
L'appel de code non managé vous permet de contrôler une partie importante du système d'exploitation en appelant des fonctions dans l'interface API Win32 et dans d'autres DLL. Outre l'interface API Win32, de nombreuses autres interfaces API et DLL sont à votre disposition via l'appel de code non managé.
Le tableau suivant décrit plusieurs DLL fréquemment utilisées dans l'interface API Win32.
DLL |
Description du contenu |
---|---|
GDI32.dll |
Fonctions GDI (Graphics Device Interface) pour la sortie de périphériques, comme celles permettant de manager le dessin et les polices. |
Kernel32.dll |
Fonctions du système d'exploitation de bas niveau pour la gestion de la mémoire et des ressources. |
User32.dll |
Fonctions de gestion Windows pour les messages, les minuteries, les menus et les communications. |
Pour obtenir une documentation complète sur l'interface API Win32, consultez le Kit de développement Platform SDK. Pour voir des exemples montrant comment construire des déclarations .NET à utiliser avec l'appel de code non managé, consultez Marshaling de données à l'aide de l'appel de code non managé.
Voir aussi
Concepts
Consommation de fonctions DLL non managées
Spécification d'un point d'entrée
Création d'une classe pour contenir des fonctions DLL
Création de prototypes dans du code managé