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

Вниз

а -ля WinRar SFX   Найти похожие ветки 

 
Viktor Kushnir   (2002-12-01 08:04) [0]

Всем привет!

Подскажите, как мне записать в уже откомпелированный EXE (который я написал сам) ресурс произвольный длинны (binary)?

Как это делается в winrar sfx, или как-нить по другому.
Просто надо компановать ресурсы ф программу уже после её компиляции.


 
SPeller   (2002-12-01 11:32) [1]

Вообще-то, РАРовские SFX-архивы - это ЕХЕ и следующий за ним обычный архив. Никаких ресурсов он не использует.


 
Viktor Kushnir   (2002-12-08 08:39) [2]

Гм, да я в курсе. Но как реализовать подобный (или другой но с таким же результатом) механизм?


 
SPeller   (2002-12-08 17:27) [3]

Почитай о формате ресурсов, о том, как они в ЕХЕ зашиваются. Говорят (сам не проверял) в книге Рихтера это есть.


 
Cobalt   (2002-12-08 20:36) [4]

Можно еще поробовать вот как:
1) Дописываешь к файлу необходимую инфу.(Для этого понадобиться 2-я прога - открываешь ехе-ник на запись, устанавливаешь указатель на конец файла и дописываешь что тебе надо)
2) Тебе ведь известен размер уже откомпилированной проги, то просто открываешь(из этой проги) свой файл на чтение, и начинаешь читать с того смещения.


 
SPeller   (2002-12-09 03:49) [5]


> Cobalt © (08.12.02 20:36)

А если бинарка не одна? Тогда уже проще будет сделать нечто подобное простейшей БД, создавать её, а потом дописывать в конец. Правда некоторые анитивирусы могут ругаться на такую хрень.


 
Viktor Kushnir   (2002-12-09 08:53) [6]

В общем EXE будет клнечно же два. Один из которых бдудет создавать второй с заднным ресурсом. На счет правки ресурсов, в Help"e очень удачно сказано, что эти комманды в Win9x не работают :(

Может кто кинет в меня примерчиком, как править ресурсы без использования спецАпи?


 
Георгий Бедный   (2003-01-12 12:25) [7]

А у меня такая фигня: надыбал LMPQAPI.dll - просто конфетка! Действует без storm.dll, Staredit.exe и пр. ботвы (кроме listfile.dat, разумеется). Теперь парюсь над архиватором. Объясните, плиз, как передрать из LMPQAPI.dll нужные функции в SFX-модуль? По идее, этот SFX-модуль должен создавать backup в теле SFX-архива для файлов, заменяемых в MPQ ресурсами этого же архива (типа как MPQDraft, только для пропатчивания Install.exe он тоже подходит). Так что, мужики, если получится - это будет новое слово в мод-мейкинге. Сейчас попробую забацать схему:

SFX.exe Install.exe
Archive(LEL): Archive(MPQ):
file1",<-------------->file1,<--------|
^ file2"<------------->file2,<------| |
| ^ file3... | |
| |_______________________________| |
|_____________________________________|

То, что стрелки в обе стороны, означает, что пропатчивание можно отменить, если SFX-архив не был удалён. Формат такого архива -LEL, в честь Леликова. Впрочем, можно оставить MPQ - к нему тоже можно SFX-модуль добавить.



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

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

Наверх





Память: 0.46 MB
Время: 0.008 c
1-75869
V-Isa
2003-02-12 12:44
2003.02.24
Окно поверх всех.


9-75735
Sarge_the_Great
2002-09-18 10:03
2003.02.24
Q


14-76194
Anatoly Podgoretsky
2003-02-08 00:24
2003.02.24
Именинник 7 февраля


1-75954
Vadim840
2003-02-12 13:06
2003.02.24
Проблема


1-75998
AVL1
2003-02-13 02:17
2003.02.24
Глюк или руки?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский