Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Povezivanje DLL-ova u vreme izvrsavanja

[es] :: Pascal / Delphi / Kylix :: Povezivanje DLL-ova u vreme izvrsavanja

[ Pregleda: 2611 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Ilija Studen
Novi Sad

Član broj: 3864
Poruke: 859
195.252.123.*

Sajt: www.activecollab.com


+1 Profil

icon Povezivanje DLL-ova u vreme izvrsavanja19.05.2003. u 17:32 - pre 225 meseci
Kako da ucitavam DLL-ove u vreme izvrsavanja?

Kako se poziva procedura po imenu (znam ime, znam parametre, ali DLL povezujem sa aplikacijom u vreme izvrsavanja)?

Da li ce biti problema ako proceduri iz DLL-a koju pozivam po imenu kao parametar prosledjujem objekat?
http://www.activecollab.com - Alat za upravljanje projektima
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.dial.InfoSky.Net

Sajt: localhost


+4 Profil

icon Re: Povezivanje DLL-ova u vreme izvrsavanja19.05.2003. u 18:30 - pre 225 meseci
Code:

type
    tFunkcija=function (param1: integer; var param2: real): integer; stdcall;
var
    func: tFunkcija;

procedure Load;
var
    s: string;
    hDll: tHandle;
begin
    s:='c:\putanja\do\biblioteke.dll';
    hDll:=LoadLibrary(pchar(s));
    if hDll=0 then raise Exception.Create('Greška u učitavanju dll-a');
    @func:=GetProcAddress(hDll,'ime_exportovane_funkcije');
end;

procedure Use;
var 
    param2: Real;
begin
    func(13, param2);
end;


(jedino obrati pažnju oko prenosa stringova.. najlakše je ako ti ne trebaju stringovi duži od 255 karaktera da cepaš sa ShortString tipovima, ali ako ti ne odgovara, pogledaj text koji dobiješ kada klikneš na File->New->Library)


a za objekte zavisi u kom je jeziku pisan taj dll. ako je isto delphi, onda ne brini nego samo prosledi pointer na objekat. ako nije, onda bolje da pogledaš COM.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Povezivanje DLL-ova u vreme izvrsavanja

[ Pregleda: 2611 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.