Poniewaz czesto zachodzi potrzeba zasztfrowania jakis tam danych i za kazdym razem musze od poczatku pisac procedure szyfrujaca a wpadlem na pomysl na napisanie dllki ktora zawiearalaby ta procedure :-) . A teraz moje pytanie: moja dllka musialby pobierac zmienna (powiedzmy haslo:string;) z programu. Jak cos takiego zrobic? :( --pozdrawiam PEDROS {hello}
Delphi6
eee.... wywolac z dll-ki procedure z parametrem w ktorym bylby ten string?--Vroc
<Delphi Knight>
No fakt. Nie pomyslalem o tym w ten sposob:-)--pozdrawiam PEDROS {hello}
Delphi6
he he he...--Vroc
<Delphi Knight>
Vroc napisał:
eee.... wywolac z dll-ki procedure z parametrem w ktorym bylby ten string?
proponuje zamienic string na pchar. wprzeciwnym wypadku sa problemy zwiazane z obsluga pamieci. przeczytaj dlugi komentarz ktory delphi wstawia na poczatku dll-ki--Pawel {Delphi6 }
Po pierwsze: naciśnij F1
No fajnie chcialem sprawdzic jak dziala i...
procedure TForm1.Button1Click(Sender: TObject);
var
DLL : THandle;
p : procedure;
begin
DLL := LoadLibrary('szyfrowanie.dll'); try
@p := GetProcAddress(DLL, 'szyfrowanie');
if @p = nil then null;
p;//jak chce tu walnac parametr to kompilator mi wyskakuje ze jest za duzo parametrow
finally
FreeLibrary(DLL);
end;
end;
w dllce jest taka procedura:
procedure szyfrowanie(Text, Algorytm : String);stdcall;
--pozdrawiam PEDROS {hello}
Delphi6
Procedura powinna być zadeklarowana:
var
p : procedure(Text, Algorytm : string);stdcall;
a było by lepiej gdybyś zrobił tak jak sugerował pq czyli procedure(Text, Algorytm : PChar). ;) --Pozdrowienia {hello}
Chodek ;)
Delphi 6
No wlasnie mialo cos takiego byc ale skopiowalem nie ten text. Ale moze ktos mi powie jak wywolac procedure z dllki z parameterem:-)--pozdrawiam PEDROS {hello}
Delphi6
żebyś nie miał zanych wątpliwości zobacz sobie jakiś standardowy unit (te które Od razu dopisują się do twojego). Tam jest deklaracja procedury razem z parametrami a potem wskazanie że procedura znajduje się w takim a takim dll.--Delphi 6
Pozdrowienia{hello} ,
Moderator Imperior