Oui, vous pouvez. Vous devez utiliser la fonction GetProcAddress, pour appeler la fonction directement dans la DLL, sans impliquer le LIB
processus liant explicitement à un GetProcAddress d'appel de DLL pour obtenir l'adresse d'une fonction exportée dans la DLL. Vous utilisez le pointeur de fonction renvoyé pour appeler la fonction DLL.
Pour citer l'exemple à partir du lien ci-dessus:
typedef UINT (CALLBACK* LPFNDLLFUNC1)(DWORD,UINT);
...
HINSTANCE hDLL; // Handle to DLL
LPFNDLLFUNC1 lpfnDllFunc1; // Function pointer
DWORD dwParam1;
UINT uParam2, uReturnVal;
hDLL = LoadLibrary("MyDLL");
if (hDLL != NULL)
{
lpfnDllFunc1 = (LPFNDLLFUNC1)GetProcAddress(hDLL,
"DLLFunc1");
if (!lpfnDllFunc1)
{
// handle the error
FreeLibrary(hDLL);
return SOME_ERROR_CODE;
}
else
{
// call the function
uReturnVal = lpfnDllFunc1(dwParam1, uParam2);
}
}
Je sens que vous bro! C dérive de plus en plus en arrière-plan. – displayname