Цитата:
Сообщение от helgboy
Уважаемый poli-smen, по-моему мы уже все запутались.
В структуре у меня все верно. Объяснять на пальцах долго, поэтому я взял вами же написанный пример и в exe добавил процедуру summa , а вызвал ее из dll .
Так вот вместо того чтоб выдать сообщение с удвоенным числом она выдает ноль...
|
Что-то я не увидел, чтобы dll-ка вызывала функцию summa из exe-шника. Я вижу только, что dll-ка подключает к себе тот же модуль (EXE_Unit1) который подключает себе и exe-шник. Итого получается, что exe-шник работает со своей копией EXE_Unit1.pas, а dll-ка со своей копией EXE_Unit1.pas. Естественно, что между этими модулями нет никакой связи. Одна копия этого модуля "вкомпилирована" в exe-шник, другая "вкомпилирована" в dll-ку. Поэтому когда dll-ка вызывает функцию summa, то она вызывает ту, которая внутри неё, а вовсе не внутри exe-шника.
Фух. Ну вроде понятно объяснил?