Jak można stworzyć plugin do programu w formie DLL?
przeczytaj artykul o dll'ach
http://www.4programmers.net/delphi/dll.html
po przeczytaniu tego textu powinien ci przyjsc do glowy pomysl...
jak nie przyjdzie to odpisz w poscie, naskrobe ci jakis przyklad
Delphi 5
Pozdrawiam
Wszystkie Dllkie-pluginy powinny exportowac te same procedury przykladowo
library Project1;
uses
SysUtils, Classes;
function KtoTy: PChar;
begin
Result:='Plugin taki sobie';
end;
exports
KtoTy index 0;
begin
end.
*Teraz w programie dajesz np.
function SprawdzDll(Nazwa: String): String; * to do prvate declarations
function TForm1.SprawdzDll(Nazwa: String): String; *a to gdzies w kod
var
DLL : THandle;
KtoTy : function: PChar;
begin
DLL := LoadLibrary(PChar(Nazwa));
try
@KtoTy := GetProcAddress(DLL, 'KtoTy');
if @KtoTy = nil then Result:='' else Result:=KtoTy;
finally
FreeLibrary(DLL);
end;
end;
*dorzucasz np. filelistboxa, z maska *.dll i w kod dubleklika dajesz
procedure TForm1.FileListBox1DblClick(Sender: TObject);
begin
ShowMessage(SprawdzDll(FileListBox1.Items.Strings[FileListBox1.ItemIndex]));
end;
takie cos spowoduje uruchomienie funkcji KtoTy z wybranego z filelistboxa dllka. jakby sie kto pytal czemu akurat funkcja SprawdzDll zwraca Stringa to powiem ze to kawalek z mojego mp3 playerka :P
--
sys:> logout....
bylem pierwszy :P
i juz jest po problemie...ide pisac wlasna obslugo pluginów :-) :-) ----- -- -
Delphi 5
Pozdrawiam
dchcorp napisał:
>bylem pierwszy :P
No i z czego sie tak cieszysz? :D --sys:> logout....
a coś ty taki drazliwy :-) :-) :-)----- -- -
Delphi 5
Pozdrawiam
dchcorp napisał:
a coś ty taki drazliwy :-) :-) :-)
A bo zostawilem blad w kodzie :P :P :P :P
jak ktos ma moc czynienia dobra to niech zamieni to:
function TForm1.SprawdzDll(Nazwa: string): string; * to do prvate declarations
na to :
function SprawdzDll(Nazwa: string): string; * to do prvate declarations
--sys:> logout....
Sheitar juz zmienilem hehe :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-
W dziale kody zrodlowe jest taki przyklad...--Pozdrawiam!
Adam Boduch
www.4programmers.net