[Delph] Obsługa pluginów

0

Witajcie.
Ostatnio zacząłem robić w moim programie obsługę wtyczek (w DLLach)
no i moja praca zatrzymała się na komunikacji
Biblioteka -- program (program -- biblioteka już zrobiłem)
nie wiem jak wywołać funkcję / procedurę w bibliotece, tak aby została ona wykonana w programie.
Np.
W DLLu onClick buttona:
Znajdz('xxx');
wtedy zostaje wykonana procedura Znajdz w programie (ona juz jest tam zaimplementowana)

0

w tą stronę nie da rady, to program wywołuje funkcje z biblioteki, a nie odwrotnie, chyba że w dllu masz odwzorowanie funkcji z programu, tzn. masz globalne zmienne w dllce, które trzymają adresy odpowiednich procedur z programu (adresy te są ustawiane odpowiednią procedurą wywoływaną z biblioteki przez program, jako parametr idzie adres odpowiedniej funkcji). imho jednak komunikacja powinna iść w drugą stronę, tzn. to program powinien wywoływać odpowiednie funkcje z biblioteki, a nie odwrotnie.

0

to drugie już mam.
Program np. wywołuje zdarzenie WEPluginExecute w bibliotece, które nastęuje po kliknięciu na przycisk w menu. Ale chciałbym zrobić, aby DLL mógł uzyskać dostęp do aktualnie edytowanego pliku i od tego jest funkcja "Pobierz"(właśnie w programie).

/albo chociaż jakiś prosty dostęp do zmiennej?

0

poczytaj o callback procedures

0

Komunikacja między programem a biblioteką DLL jest możliwa do zrobienia w łatwy sposób poprzez użycie interfejsów. Poszukaj w artykułach jest opisane jak to zrobić.

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