dynamic link library

0

Witam, mam problem z przerobieniem procedurki z delphi do c... Otóż mam bibliotekę [b]example.dll[/b] w której jest exportowana procedura [b]mojaprocedura[/b] (pokazuje ona jakis tam MessageBox).
Program importujący i wywołujący tą procedurę w delphi wygląda ona tak:

program importer;
uses Windows, SysUtils;

procedure mojaproceduraimport; stdcall external 'example.dll' name 'mojaprocedura';

begin
mojaproceduraimport;
end.

Jak ma wygladać cały kod w C? Na [url=http://en.wikipedia.org/wiki/[...]c-link_library]Wikipedii[/url] przeczytałem że przykładowy kod ma wyglądać tak:

#include <windows.h>
#include <stdio.h>

// Import function that adds two numbers
extern "C" __declspec(dllimport) double AddNumbers(double a, double b);

int main(int argc, char **argv)
{
double result = AddNumbers(1, 2);
printf("The result was: %f\n", result);
return 0;
}

... lecz nie widzę w nim wskazania konkretnej biblioteki (w przykładze delphi jest wyraźnie example.dll) z której chcemy importować. Czy może mi ktoś przerobić ten kod z delphi na C? Dzięki [browar]

0

Musisz wygenerować plik .lib (np.programem implib) z biblioteki .dll i dołączyć go do kompilacji.

Jeśli nie , to można bibliotekę załadować dynamicznie swoim programem
i uzyskać adres funkcji i ją wywołać .
LoadLibrary
GetProcAddress

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0