Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.10.23;
Скачать: [xml.tar.bz2];

Вниз

Запуск одного ехе из другого   Найти похожие ветки 

 
Pasha L ©   (2005-09-27 22:11) [0]

Здравствуйте. У меня вопрос: можно ли с помощью Дельфи зашить A.exe в B.exe, чтобы потом при запуске B.exe запустить A.exe, не извлекая его для этой цели наружу?


 
S@ska   (2005-09-27 22:48) [1]

Если Присоединить второй EXE в качетве ресурса к первому
Потом при старте первого ты из ресурса забираешь второй и сохраняешь его на диске. И дале просто запускаешь с помощью CreateProcess или WinExec :)


 
S@ska   (2005-09-27 22:58) [2]

Во кстати - пож-ста
http://forums.realcoding.net/index.php?s=dbb1b8969be86397e26e790de2efa209&act=Print&client=printer&f=2&t=1737


 
Думкин ©   (2005-09-28 06:28) [3]

> Pasha L ©   (27.09.05 22:11)  

1. Почти наверняка вы будете обвинены в вирусописательстве.
2. Почти наверняка вы обидетесь.
3. Почти наверняка вы не вирус пишите.
4. Почти наверняка вы неправы.

Если вы продрались сквозь расставленный мной лес и от 100% уверенности у вас отсалось хотя бы 5, то

1. что смущает в сохранении на диск?
2. что смущает в выносе кода в библиотеку?

Или вопрос ПРИНЦИПИАЛЬНЫЙ? Я бы и больше буквы сделал - но увы - никак.

Возможности есть. Но... стоит ли?

Если после этого ваша уверенность выше 1% - ждите.


 
Вова Полтавский   (2005-09-28 09:57) [4]

Думкин ©   (28.09.05 06:28) [3]

Следующий вопрос будет - А как запустить *.exe образ из памяти :) 100%


 
Pasha L ©   (2005-09-28 19:12) [5]

S@ska   (27.09.05 22:58) [2]
Я посмотрел ссылку. Но там есть ещё одна ссылка, которая возможно могла бы мне помочь. Но дело в том, что она дохлая. Всё остальное - про зашивание ехе в ехе я знаю. И как извлечь его потом - тоже знаю. Делаю это так:
Создаю r.rc, где пишу key0 EXEFILE A.exe. Потом даю команду brcc32.exe r.rc. Получаю r.res. В B.dpr пишу {$R r.res}. Для дальнейшего извлечегия A.exe пишу

program myprog;
uses
 classes, windows;
var
 res:TResourcestream;
begin
 Res:=TResourceStream.Create(Hinstance, "key0", Pchar("EXEFILE"));
 Res.SavetoFile("A.exe");
 Res.Free;
 winexec("A.exe",SW_NORMAL);
end.

Компилирую B.dpr, получаю B.exe. Запускаю B.exe, получаю извлеченный и запущенный A.exe. Вот. Но мне надо, чтоб A.exe не извлекался, а запускался напрямую из B.exe.


 
Джо ©   (2005-09-28 19:18) [6]


> [5] Pasha L ©   (28.09.05 19:12)

Ты готов писать собственный загрузчик? Думаю, что нет.


 
umbra ©   (2005-09-28 19:21) [7]


> Но мне надо, чтоб A.exe не извлекался, а запускался напрямую
> из B.exe.


Так не получится, если не написать свой загрузчик, как справедливо отметил > Джо ©  . Дешевле, наверное, извлечь, віполнить и удалить. А еще дешевле сделать ОДИН экзешник


 
Джо ©   (2005-09-28 19:22) [8]

Дополнение к [6].
В чем СМЫСЛ подобных манипуляция?

Если "екзешник" - твой, то зачем геморрой, если уже все давно придумано и выложено на тарелочку с голубой каемочкой - DLL.
Если "екзешник" - чужой, то это, вероятно, нарушение авторских прав - и в любом случае блажь...



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

Форум: "Начинающим";
Текущий архив: 2005.10.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.039 c
2-1128003394
Тюменский
2005-09-29 18:16
2005.10.23
Вопрос по Delphi и MySQL


11-1108678731
FreeOne
2005-02-18 01:18
2005.10.23
BHO (aka Browser Helper Objects)


1-1128328806
Иванов__
2005-10-03 12:40
2005.10.23
Можно ли отлаживать DLL вызываемую в другой проге?


2-1128239239
elysee
2005-10-02 11:47
2005.10.23
CSV(MS-DOS)


8-1117113862
Ботвин Дмитрий
2005-05-26 17:24
2005.10.23
Выпуклость рисунка





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский