Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Exe в Exe

13K
13 января 2012 года
karimchik
65 / / 16.06.2008
Всем доброго времени суток!Интересует след. вопрос.Дан сторонний exe файл.Необходимо вшить его в проект,и затем запустить.При том,что наличие файла в каталоге с исполняемой программы быть не должно.Всё равно что exe в exe.Были задумки использовать в MS VS 8 ресурсы.Но вот обращение к ним строить не могу,т.к. работаю в среде BCB6.Если у кого есть решение проблемы ,прошу выложить!Буду очень презнателен!!!!
277
13 января 2012 года
arrjj
1.7K / / 26.01.2011
Цитата: karimchik
...Были задумки использовать в MS VS 8 ресурсы.Но вот обращение к ним строить не могу,т.к. работаю в среде BCB6...



И что тебе мешает использовать ресурсы? Отсутствие красивого редактора?
FindResource SizeofResource LoadResource LockResource
И сохраняешь в файл.

Если слишком сложно то тупо к своему файлу в конец добавь ехе который хочеш запустить, и оттуда сохраняй.

7
13 января 2012 года
@pixo $oft
3.4K / / 20.09.2006
Ежели надо совсем без создания файла,то тут похлеще.Надо будет проецировать это дело в память и там запускать
Есть в интернетах статьи,но ссылок не помню(ибо таким извратом не интересовался)
16K
13 января 2012 года
asmforce
186 / / 05.01.2010
Цитата: @pixo $oft
Ежели надо совсем без создания файла,то тут похлеще.Надо будет проецировать это дело в память и там запускать
Есть в интернетах статьи,но ссылок не помню(ибо таким извратом не интересовался)



Мне это представляется едва ли возможным. :rolleyes:

При хранении целевого exe.* в ресурсах нашего родительского, последний уже спроецирован в память, а значит и первый внутри него тоже.

Проблема в другом: нужно создать процесс. Просто передать управление по адресу точки входа недостаточно.
Кто будет производить раннее связывание?
Да и с чего это коду быть релокабельным? Ему нужно собственное адресное пространство. Нужно дабы адрес расположения имиджа в ВАП был равен ImageBase, а он часто равен для наших обоих исполнимых (популярное значение - 0x400000).

Короче говоря, нужно рыться в NativeAPI. Возможно, там есть что-то интерестное. ;)

13K
14 января 2012 года
karimchik
65 / / 16.06.2008
:) ну....без API не как))Есть вариация,загрузив в ресурсы родит exe , получить место расположения дочернего exe...нуу...а затем :
WinExe("наша програ.exe");
тока нужно построить корректный запрос к ресурсам....
16K
14 января 2012 года
asmforce
186 / / 05.01.2010
Цитата: karimchik

WinExe("наша програ.exe");



Вероятно, Вы имеете ввиду функцию WinExec.
Она принимает путь к файлу, а не смещение в памяти. Следовательно, таки придётся создавать файл и выгружать в него Ваш ресурс, а лишь затем запускать на выполнение.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог