Une dll est un fichier de bibliothèque dynamique sous Windows. Les fonctions à utiliser sont souvent encapsulées dans un fichier dll. Par conséquent, il n'y a pas d'entrée principale dans le fichier dll. Considérez-le simplement comme une fonction. Son contenu n'est pas mystérieux .
Il vous suffit de charger le fichier dll lorsque vous l'utilisez. Après avoir chargé le fichier dll, vous pouvez utiliser les fonctions qui y sont encapsulées.
L'appel en c ++ est très simple. Windows est encapsulé. Vous pouvez l'utiliser directement avec #include <Windows.h>. Si vous voulez utiliser Python, vous devez utiliser la bibliothèque ctypes.
Le fichier dll de ce test définit uniquement une fonction add, qui définit une opération d'ajout:
Vous pouvez voir qu'une fonction d'ajout est exposée
Utilisons Python pour tester l'effet:
from ctypes import cdll
_dll = cdll.LoadLibrary("./dllTest.dll")
res = _dll.add(3,2)
print(res)
résultat courant:
appel c ++:
#include <iostream>
#include<Windows.h>
int main()
{
HMODULE module= LoadLibrary(L"dllTest.dll");
if (module == NULL)
{
return 0;
}
typedef int(*AddFunc)(int, int);
AddFunc add;
add = (AddFunc)GetProcAddress(module, "add");
int re = add(2,5);
std::cout << re <<std::endl;
return 0;
}
résultat de l'opération: