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

Вниз

???Как запустить программу???   Найти похожие ветки 

 
Nubie   (2002-05-21 02:56) [0]

Народ такая вот проблема:
(1)Гружу EXE файл через LoadLibrary , затем получаю точку входа программы и вызываю ее.
Работает...:)
(2)Гружу EXE файл через CrateFileMapping в контекст процесса , затем
получаю точку входа программы и вызываю ее.
Не работает...GPF...:(:(:(

В дебаге вроде видно следующее:
1>>>call dword ptr [ds:...]
2>>>call dword ptr [Proc+..(...)]
В чем сдесь дело???


 
Digitman ©   (2002-05-21 08:51) [1]

При использовании CrateFileMapping() грузи образ исп.файла в АП процесса по адресу, соответствующему значению ImageBase в его опциональном заголовке. Если грузишь по иному адресу, придется пересчитывать вручную все таблицы релокации абсолютных адресов (что LoadLibrary(), в отличии от CrateFileMapping() делает автоматически)
Кроме того, при вызове ф-ции CrateFileMapping() следует использовать как минимум флаги SEC_IMAGE | PAGE_EXECUTE


 
paul_shmakov ©   (2002-05-21 14:24) [2]

http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1021935556&n=5


 
Giga-Byte ©   (2002-05-21 17:21) [3]

uses ShellApi;
...
ShellExecute(<параметры посмотришь>);



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

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

Наверх




Память: 0.47 MB
Время: 0.008 c
1-13685
Извращенец
2002-07-14 20:04
2002.08.05
флаг, показывающий положение кнопки мыши ?


1-13712
Dmitriy_D6
2002-07-24 11:59
2002.08.05
SOAP, Web-сервисы и Javascript


14-13766
Starkom
2002-07-09 16:36
2002.08.05
по поводу галочки Compile with Run-time packages


7-13826
Skif
2002-05-21 16:37
2002.08.05
Запуск приложения на нескольких компьютерах.


4-13858
Nubie
2002-05-30 05:19
2002.08.05
Как загрузить ЕХЕ в память?