Skocz do zawartości

Przesyłanie danych między aplikacją, a wtyczką


Jaro88PL

Polecane posty

Witam

Od kilku dni uczę się pisania aplikacji która wspiera dodatki (tzn. wtyczki). Umiem już przekazać dane typu TStringList, WideString itp.z pliku DLL do aplikacji ale nie umiem przekazać tych danych z aplikacji do pliku DLL. Żeby np. pobrało tekst z kontrolki Edit umieszczonej w aplikacji i wyświetliło go w label lub edit na formie we wtyczce DLL.

Czy mógłby mi ktoś pomóc i łopatologicznie jak krowie na rowie pokazać jak to zrobić?

 

 

Mój kod do pobierania treści z pliku DLL:

library Wtyczka;

uses Windows;

 

procedure PobieranieTresci(var S: WideString); stdcall;

begin

S := 'Jakis tam tekst';

end;

 

exports

PobieranieTresci;

 

Plik EXE:

type

TPobieranieTresci = procedure(var S: WideString); stdcall;

 

var

PobieranieTresci: TPobieranieTresci;

 

 

procedure TForm1.Button1Click(Sender: TObject);

var

DLL : THandle;

begin

DLL := LoadLibrary('wtyczka.dll');

try

@PobieranieTresci := GetProcAddress(DLL, 'PobieranieTresci');

if @PobieranieTresci=nil then raise Exception.Create('Bład - nie mogę znaleźć proceudry w bibliotece!');

PobieranieTresci(S);

Edit1.Text := S;

finally

FreeLibrary(DLL);

end;

end;

 

I tu wszystko ładnie działa. Czyli tekst z DLL jest wyświetlany w Edit1 umieszczonym na formie programu. Tylko pytanie jak to wykonać w drugą stronę. Czyli żeby np. treść pola Edit1 umieszczonego na formie była wyświetlana na kontrolce we wtyczce? Bardzo proszę o pomoc i jak wspomniałem wcześniej bardzo bym prosił o jakąś dosadną instrukcję bo walczę z tym od 2 dni i zero postępu. Dziękuję z góry za pomoc.

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...