Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.02;
Скачать: CL | DM;

Вниз

Можно ли использовать .exe, а не .dll для экспорта функций?   Найти похожие ветки 

 
Vorobyev Sergey   (2003-09-22 11:25) [0]

Привет всем!

Написал в project1.dpr:
exports
MyTest;

Откомпилировал..
Если в project2.dpr делать статический вызов функции:
procedure MyTest; stdcall; external "project1.exe";
то возникают ошибки,
если вызывать динамически (LoadLibrary, GetProcAddress), то ИНОГДА возникают ошибки (в зависимости от кода MyTest, использования VCL, и др.), а иногда нормально..
Не понимаю почему..
Может такой механизм ( экспорт функций из .exe) вообще нельзя использовать?
Кто-нибудь такое делал?
Поделитесь опытом, пожалуйста, или своими размышлениями..
--
Спасибо


 
PVOzerski ©   (2003-09-22 11:29) [1]

Я таким путем находил функции по имени из самого приложения, в котором они были объявлены.


 
ki11er   (2003-09-22 13:26) [2]

А что конкретно нужно сделать? Т.е. для чего все это?


 
oomneeq ©   (2003-09-22 13:56) [3]

приложение как и длл тоже может экспортировать процедуры.
на это запрета нету. Cносишь точно также экспортируемые ф-ии в раздел exports.
Насчет статического связывания не знаю и не представляю как это может пригодиться.
А для динамического - в GetProcAddress в этом случае указывается хэндл самого приложения. Такой расклад может иметь смысл, когда плугинам-длл есть нужда вызывать известную и заранее определенную ф-ю из приложения.
"Иногдатость" ошибок скорее говорит об ошибках кодирования, сам принцип не ошибочен.


 
Vorobyev Sergey   (2003-09-22 14:03) [4]


> А что конкретно нужно сделать? Т.е. для чего все это?

Разрабатывается приложение, выполняющее определенные функции автономно..
Но есть необходимость иногда вызывать эти функции из другого приложения.. Например "принцип экспорта из ДЛЛ" здесь очень был бы кстати..


 
mike.dld ©   (2003-09-22 14:07) [5]

А если не статически, а динамически?



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

Текущий архив: 2003.10.02;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.036 c
6-4016
Mithrandir
2003-07-29 13:34
2003.10.02
HTTP Client - пример бы...


3-3803
Peps
2003-09-11 06:27
2003.10.02
Работа с DBComboBox


1-3833
Armageddon
2003-09-19 14:21
2003.10.02
Как запустить программу как сервис.


1-3905
webpauk
2003-09-22 13:02
2003.10.02
Изменение св-в компонента


3-3737
Radionov Alexey
2003-09-12 08:41
2003.10.02
---|Ветка была без названия|---