Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для Windows/Dos > Exe из exe.


Автор: L0GA4 25.10.2006, 23:33
Есть форма с двумя текст боксами, эта форма должна получить Title & Text для месседж бокса и создать ехе файл который будет вызывать Messagebox с этими двумя параметрами.
 Можно это как-нибудь сделать?
 Была идея скопмилировать заранее программу с Мессейджом, в ней указать адресса , где искать параметры.....и включить в основную программу, которая и будет создавать(сохранять) ехе уже с параметрами.
 Как создать/получить данные я знаю, хз как создать из одного Ехе файла другой(с титлами и текстами ) smile

 Хелп )

Автор: Romikgy 26.10.2006, 00:04
имхо проще будет создать болванку , чтобы выкидывала это 
Цитата(L0GA4 @  25.10.2006,  22:33 Найти цитируемый пост)
Мессейджом

а строки брало из ресурсов, а с ресурсами можно работать и из вне

Автор: L0GA4 26.10.2006, 10:44
Цитата(Romikgy @ 26.10.2006,  00:04)
имхо проще будет создать болванку , чтобы выкидывала это 
Цитата(L0GA4 @  25.10.2006,  22:33 Найти цитируемый пост)
Мессейджом

а строки брало из ресурсов, а с ресурсами можно работать и из вне

а как её из основного ехе файла создать ( не используя компилятор & линкер ) ?

Автор: nobodyzzz 26.10.2006, 11:05
делаеш болванку exe ту что с мессадж боксом, потом в тот файл который создает при помоще либо bin2db либо если у тебя фасм file её вставляеш ну а дальше я думаю сам додумаеш =))

Автор: Romikgy 26.10.2006, 12:57
L0GA4, написал то что те нужно (болванка) , а ее посредством ресурсов заганяешь в твой файл, из проги достаешь из ресурса и сохраняешь в файл,
далее этот файл курочишь по ресурсам (изменяешь текст для мессагебокса)

Автор: L0GA4 29.10.2006, 10:38
Цитата(nobodyzzz @ 26.10.2006,  11:05)
делаеш болванку exe ту что с мессадж боксом, потом в тот файл который создает при помоще либо bin2db либо если у тебя фасм file её вставляеш ну а дальше я думаю сам додумаеш =))

у меня masm ;)
получилось только сохранить болванку и вставить в основной файл... сохраняется отлично, короче все работает до.....того пока я не начинаю разбирать на кусочки бин файл )) т.е код сохраняемого файла промерно такой:
Код

szFile db 04Dh,05Ah,090h,000h,003h,000h,000h,000h,004h,000h,000h,000h,0FFh,0FFh,000h,000h
db 0B8h,000h,000h,000h,000h,000h,000h,000h,040h,000h,000h,000h,000h,000h,000h,000h
db 000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h
ну и т.д..


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

Автор: dumb 30.10.2006, 03:17
если "раздвинешь", то естественно "сломаешь" структуру" файла.
просто зарезервируй в болванке под Title & Text по сотне-другой байт, а в готовом .exe посмотри файловые смещения этих строк... "рожаешь" болванку", и записываешь нужные строки по ранее вычисленным смещениям.
решение это имеет недостатки("резервация" места), но является самым простым.

Автор: bass 11.8.2007, 01:13
Я как правило вконце где 00 00 00 00 00 00 00 вставляю балванку и пользуюсь JMP10003234 например и обратно под отладчиком видно на что нужно поменять строку далее хекс редактор.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)