Здравствуйте, Аноним, Вы писали:
А>Доброго всем времени суток, у меня появился вопрос о том как выполнить из Dll-библиотеки запускаемой моей программой функцию или процедуру которая находится в программе. а также как выполнить процедуру находящуюся в главном файле "*dpr" из модуля этой же программы. что то бился целый день но ничего не вышло, кто знает подскажите плз.
Если позволяет архитектура, то можно просто использовать сообщения, например, функцию PostThreadMessage.
Если нет, то можно использовать callback-функции — скажем в DLL определить функцию инициализации:
typedef void (*func_prototype)();
func_prototype func_pointer;
void InitCallbacks(func_prototype* f) {
func_pointer = f;
}
а в главной программе ее вызвать:
void func() {...}
...
InitCallbacks(func);
Есть и другие способы — все зависит от архитектуры приложения...