Exportation à partir d'une DLL
Un fichier DLL a une disposition très similaire à un fichier .exe, avec une différence importante : un fichier DLL contient une table d’exportations. La table d’exportations contient le nom de chaque fonction que la DLL exporte vers d’autres exécutables. Ces fonctions sont les points d’entrée dans la DLL. seules les fonctions dans la table d’exportations sont accessibles par d’autres exécutables. Toutes les autres fonctions de la DLL sont privées pour la DLL. La table d’exportations d’une DLL peut être affichée à l’aide de l’outil DUMPBIN avec l’option/EXPORTS.
Vous pouvez exporter des fonctions à partir d’une DLL à l’aide de deux méthodes :
Créez un fichier de définition de module (. def) et utilisez le fichier. def lors de la génération de la DLL. Utilisez cette approche si vous souhaitez exporter des fonctions à partir de votre dll par ordinal plutôt que par nom.
Utilisez le mot clé
__declspec(dllexport)
dans la définition de la fonction.
Lorsque vous exportez des fonctions avec l’une ou l’autre des méthodes, veillez à utiliser la Convention d’appel __stdcall .
Que voulez-vous faire ?
Exporter à partir d’une DLL à l’aide d' __declspec (dllexport)
Exporter des fonctions C++ à utiliser dans des exécutables en langage C
Exporter des fonctions C à utiliser dans des exécutables en langage C ou C++
Exporter des fonctions à partir d’une DLL par ordinal plutôt que par nom