Главная страница
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.037 c
1-3963
Vint45
2003-09-20 12:13
2003.10.02
Приостановка программы


1-3930
tim5
2003-09-20 22:37
2003.10.02
Вывод на печать изображения с Image.


1-3959
stud
2003-09-20 12:43
2003.10.02
как передать фокус компонентам по порядку их следования


1-3943
Mild
2003-09-18 13:53
2003.10.02
список классов


3-3777
P0tia
2003-09-10 18:15
2003.10.02
Все тоже удаление.