Главная страница
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.032 c
6-4025
Dysan
2003-08-01 18:16
2003.10.02
Как отправить почту по smtp?


1-3947
Никита
2003-09-20 22:32
2003.10.02
Drag n Drop


14-4105
Knight
2003-09-13 21:06
2003.10.02
& n b s p ; и другие...


3-3718
BorisSV
2003-09-15 11:32
2003.10.02
Отменить удаление используя ActionList => DataSetDelete


1-3924
Alex21
2003-09-18 11:42
2003.10.02
Ускорение работы Excel при взаимодействии со Stringgrid