Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Передача указателя формы в процедуру dll   Найти похожие ветки 

 
paule   (2005-06-07 05:47) [0]

Решил все собственные процедуры перенести в dll. Проблема в том, что процедуры используют данные содержащиеся в  Edit-ах в основной форме.

Процедура из dll:
...
procedure BalanseEnergy(f:TForm); export;
begin
  ShowMessage((f.findComponent("E1_1") as TEdit).Text);
end;

exports
 BalanseEnergy name "BalanseEnergy";
...

Вызываю процедуру так

....
implementation

procedure BalanseEnergy(f:TForm); external "OSGMDLL" name "BalanseEnergy";
...
...
BalanseEnergy(Form1);

Но работать такая конструкция не хочет...

Подскажите, как сделать?


 
Юрий Зотов ©   (2005-06-07 05:55) [1]

Exe и DLL компилируются раздельно, поэтому класс в Exe и тот же самый класс в DLL - это два разных класса. Значит, для переданной ссылки на объект оператор AS правильно не сработает.

Компилируйте Exe и DLL с run-time пакетами. Или вместо DLL используйте BPL. Или используйте COM-технологию. Или откажитесь от передачи ссылок на объекты.


 
paule   (2005-06-07 08:51) [2]

А каким образом тогда можно получить значение Edit-а в процедуре dll?


 
novice_man ©   (2005-06-07 09:48) [3]

paule   (07.06.05 8:51) [2]
А каким образом тогда можно получить значение Edit-а в процедуре dll?


Какое значение? Текст? Передайте его туда при вызове процедуры.


 
paule   (2005-06-07 10:44) [4]

у меня Edit-ов 28 штук, не очень удобно 28 параметров передавать :)


 
novice_man ©   (2005-06-07 10:50) [5]

Поместите их в PChar с разделителями.


 
TUser ©   (2005-06-07 10:50) [6]

> у меня Edit-ов 28 штук, не очень удобно 28 параметров передавать :)

Скорее всего, разумно засунуть их значения в какую-нибудь структуру (record, array) и передавать уже ее.

PS. ShareMem не забудьте.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
11-1099458028
miek
2004-11-03 08:00
2005.06.29
проблема с комбобоксами


14-1117267775
vajo
2005-05-28 12:09
2005.06.29
монтаж сети


14-1117454352
Igorek
2005-05-30 15:59
2005.06.29
sms спамерство и лохотронство


1-1118174449
Pasha L
2005-06-08 00:00
2005.06.29
Директория из TSearchRec


1-1118330218
uran
2005-06-09 19:16
2005.06.29
проблема с изменением WindowState в FormActivate после создания





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский