Нда... Что делаешь - не понятно. Как - не понятно. На что конкретно ругается - не указал. Нда...
Вот рабочий пример.
Код DLL (TestDll.dll в результате будет)
#include "pch.h"
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
extern "C" __declspec( dllexport ) int test( int a, int b ) {
return a + b;
}
Вот пример использования:
#include
#include
typedef int ( *LPFUNCTION )( int, int );
int main()
{
HMODULE hDll = LoadLibrary( L"TestDLL" );
LPFUNCTION function = (LPFUNCTION)GetProcAddress( hDll, "test" );
std::cout << function( 3, 5 ) << std::endl;
return 0;
}
Проверил - 8 в консоли увидел