Delphi i dll napisany w c++

0

czy ktos mogłby mi pomóc??Mam taki problem chciałbym w delphi wykorzystac bibliotekę napisana w c++. I nie wiem jak sie odwoływać do funkcji z tej biblioteki. dla przykładu w bibliotece mam taka funkcję: DLLImport long WINAPI funkcja(char *device_name,long baud);.Niestety nie wiem jak sie do niej odwolac w delphi. jesli ktos mogłby mi pomoc to prosze om pomoc. z gory dziekuje:)

0

To będzie coś w stylu:

type
TFunkcja = function (device_name:PChar; Baud: Longint):Longint; stdcall;

var DLLHandle:THandle;
    Funkcja:TFunkcja;
begin
DLLHandle:=LoadLibrary('plik.dll');
if (DLLHandle<>INVALID_HANDLE_VALUE) then
  begin
  Funkcja:=GetProcAddress(DLLHandle, 'funkcja');
  if (@Funkcja<>nil) then
    Funkcja('Device1', 115200);
  FreeLibrary(DLLHandle);
  end;
end;

Pisane z pamięci, więc może nie działać.

0

podaj wszystko to ci pomoge wywolywac te funckcje ale Szczawik rowniez napisla ok, chyba ze to moze niebyc stdcall tlyko cdecl ale niewiem to juz jest w bibliotece c++

0

witam sasia wyslalem ci te biblioteki na maila jak bys mogl to prosze o pomoc:) z gory dziekuje

0

Moglbys wyslac jescze raz na inny adres ([email protected]) bo tamto konto mam chyba usuniete :/

0

jasne juz wysylam:)

0

oki to czekam jak co to GG: 1714573

0

mam podobny problem

jak odwołuje się w Builder'e C++ to dziala wszystko jak w Delphi to nie wszystko,

Z jednym parametrem tak (np. unsigned char *wsk), ale z dwoma nie (unsigned char *wsk1, int wl)

0
wiktor_m napisał(a)

mam podobny problem

jak odwołuje się w Builder'e C++ to dziala wszystko jak w Delphi to nie wszystko,

Z jednym parametrem tak (np. unsigned char *wsk), ale z dwoma nie (unsigned char *wsk1, int wl)

juz sobie poradzilem
w c++ trzeba ustawic cdecl
ale w Delphi moze byc bylo co albo cdecl albo stdcall

natomiast parametry trzeba zamienic miejscami, nie wiem dlaczego.. :)

0

cdecl czyta parametry od konca a stdcall w delphi od pocztau (chyba)

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