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

Вниз

Возможен ли экспорт процедур из EXE   Найти похожие ветки 

 
Still Swamp   (2005-09-24 13:38) [0]

Возможен ли экспорт процедур из EXE? Если да то как?


 
Kolan ©   (2005-09-24 13:48) [1]

Да также как и в Dll. Пишешь
export
{Тут список экспортируемых процедур.}


 
Still Swamp   (2005-09-24 13:53) [2]

В каком из модулей?
У меня говорит компилятор - недопустимое выражение.
Может лиэкспорт находится в Programm?


 
XProger ©   (2005-09-24 14:06) [3]

exports


 
Still Swamp   (2005-09-24 19:03) [4]

Блин... ну это конечно... бывает наверно у всех. :)


 
Lamer@fools.ua ©   (2005-09-25 00:12) [5]

>>Still Swamp   (24.09.05 13:38)

Формально возможен, но на практике применение экспорта функций из EXE сильно ограничено вследствие того, что при загрузке EXE"шника функцией LoadLibrary() не выполняется код инициализации.


 
Игорь Шевченко ©   (2005-09-26 10:57) [6]

Lamer@fools.ua ©   (25.09.05 00:12) [5]


> на практике применение экспорта функций из EXE сильно ограничено
> вследствие того, что при загрузке EXE"шника функцией LoadLibrary()
> не выполняется код инициализации


И не только это. Не выполняется настройка адресов (загрузчик не обрабатывает секцию .reloc), поэтому любой позиционно-зависимый код не будет работать.


 
Leonid Troyanovsky ©   (2005-09-26 11:14) [7]


> Lamer@fools.ua ©   (25.09.05 00:12) [5]

> Формально возможен, но на практике применение экспорта функций
> из EXE сильно ограничено вследствие того, что при загрузке
> EXE"шника функцией LoadLibrary() не выполняется код инициализации.


А зачем грузить екзешник LoadLibrary?
Экспорт из экзе на практике (экзотической) ограничен случаями,
когда некая библиотека запрашивает у своего хоста оные,
видимо, весьма специфические, функции.

--
Regards, LVT.


 
Lamer@fools.ua ©   (2005-09-26 11:45) [8]

>>Leonid Troyanovsky ©   (26.09.05 11:14) [7]

>А зачем грузить екзешник LoadLibrary?

Ну иначе не имеет смысла их вообще экспортировать. Верно?
А уж зачем - это к автору топика  :-)

>Экспорт из экзе на практике (экзотической) ограничен случаями,
когда некая библиотека запрашивает у своего хоста оные,
видимо, весьма специфические, функции.


Могу даже привести пример такого действительно экзотического случая. Это аналог ShareMem без использования дополнительной (например, борландовской) DLL.


 
Leonid Troyanovsky ©   (2005-09-26 13:23) [9]


> Lamer@fools.ua ©   (26.09.05 11:45) [8]

> >А зачем грузить екзешник LoadLibrary?

> Ну иначе не имеет смысла их вообще экспортировать. Верно?


Смысл экспортирования из экзе (если он, вообще, существует),
именно в неиспользовании LoadLibrary.
Из dll GetProcAddress берется для GetModuleHandle(nil).

--
Regards, LVT.


 
GrayFace ©   (2005-09-27 09:56) [10]

> Игорь Шевченко ©   (26.09.05 10:57) [6]
> И не только это. Не выполняется настройка адресов (загрузчик
> не обрабатывает секцию .reloc), поэтому любой позиционно-
> зависимый код не будет работать.

Спасибо за инфу. Но тогда я вообще не представляю, зачем Delphi засовывает оную .reloc в exe?


 
Суслик ©   (2005-09-27 17:29) [11]

Я как-то задавал аналогичный вопрос.
Результат - нельзя. Что-то там не локейтится.



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

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

Наверх




Память: 0.49 MB
Время: 0.026 c
14-1131228298
alexdrob
2005-11-06 01:04
2005.11.27
Браузер отображает не все страницы.


2-1131302018
ArtemESC
2005-11-06 21:33
2005.11.27
Дин.массивы


2-1131565651
Haillies
2005-11-09 22:47
2005.11.27
Пинг


14-1131198739
MIX55
2005-11-05 16:52
2005.11.27
DCU32int


14-1131377741
DiamondShark
2005-11-07 18:35
2005.11.27
Net 2.0 и все-все-все