GetProcAddress не может получить адрес ф-ии из dll - C (СИ)
Формулировка задачи:
Осваиваю написание dll, GetProcAddress не может получить адрес ф-ии из моей dllки? Где может быть засада? В экспоре ф-я вроде должна быть… поскольку…
код dll... все пишется на просто - Си.
в проге ее используюшей
либа успешно загружается а ф-я неть(
#include <Windows.h>
#include "dllmain.h"
extern _declspec(dllexport) int __stdcall Multiply( int a, int b)
{
return a * b;
}
BOOL APIENTRY DllMain( HMODULE hModule,DWORD ul_reason_for_call,LPVOID lpReserved)
{
return TRUE;
}#include <Windows.h>
#include <stdlib.h>
#include <stdio.h>
typedef int (__stdcall *MULTIPLY)(int a, int b);
int main(int argc, char* argv[])
{
HMODULE hLib = LoadLibrary("dlltest.dll"); // Загружаем библиотеку
if (hLib)
{
MULTIPLY Multiply;
printf("dll loaded...\n");
Multiply = (MULTIPLY)GetProcAddress(hLib, "Multiply"); // Загружаем функцию
if (Multiply)
{
int result;
printf("Multiply function loaded...\n");
result = Multiply(2,2);
printf("Multiply(2,2) %d\n", result);
}
FreeLibrary(hLib);
}
getch();
}Решение задачи: «GetProcAddress не может получить адрес ф-ии из dll»
textual
Листинг программы
int __stdcall Multiply( int a, int b)
{
return a * b;
}