PDA

Просмотр полной версии : [статья] Пишем простейший джойнер файлов. Часть 2


becensed
01.12.2009, 18:36
Эта статья разбита на две части: 1. написание лоадера,
2. написание билдера.

Хочу сказать, что статья написана для _новичков_.
Люди знающие здесь ничего нового не узнают.



I. ИНСТРУМЕНТЫ.

В данной статье я покажу, как сделать простейший билдер для нашего простейшего лоадера.
Лично я буду компилировать всё в Microsoft Visual Studio 2008, но каждый из вас может
выбрать тот пакет, который ему больше по душе.

Итак, необходимое:
- Microsoft Visual Studio 2008;
- знание Си, WinApi;
- терпение и чуток мозга :)


II. ЧТО ТАКОЕ БИЛДЕР И КАК ОН РАБОТАЕТ?

Билдер, в нашем случае, это программа, которая на входе получает файлы, а на выходе - один
.ехе-файл, при запуске которого запустятся все файлы, что были даны билдеру. Да-да, это тот самый
обычный GUI интерфейс, с кнопками типа "Добавить файл", "Склеить файлы" и т.п. :)
Работа билдера простая:
1. Открываем лоадер (см 1-ую часть);
2. Открываем файл из списка;
3. Записываем первому файлу заголовок (8 байт)+параметры и имя;
4. Пишем этот файл в конец лоадера.
5. Если открыли все файлы, то выйдем, иначе пункт 2.

Мы немного модифицируем лоадер из первой части, добавим ему ресурсы (иконку).
Это для того, чтобы ее можно было менять.

Собственно, больше описывать нечего. Всё находится в исходниках билдера.
Не знаю, что там комментировать. Всё должно быть понятно. Если нет - используйте MSDN, в 90%
случаев найдете ответ именно там!

Немного прокомментирую содержимое архива:

| fuckav-joiner_1.txt - первая часть статьи
| fuckav-joiner_2.txt - вторая часть статьи (сейчас ее читаете)
|
+---exe
| builder.exe - файл билдера, уже скомпиленный.
|
\---src
| builder.cpp - исходники билдера
| make.bat - мейкфайл, пользуюсь консолью
|
\---res
hkit.exe - тулза, с помощью которой loader.exe превращается в массив байт.
loader.asm - исходники лоадера
main.ico - иконка лоадера, суйте туда свою, если хотите
Upack.exe - пакер для лоадера.


III. КОНЕЦ.

Смотрите, изучайте. Проще придумать сложно. Сложнее придумать легко. В этой статье,
в двух ее частях, мы рассмотрели, как написать простой, но полноценный джойнер любого
количества файлов. Если у вас будут вопросы, я постараюсь на них ответить. Только, пожалуйста,
прежде, чем спросить - ПОИЩИТЕ ОТВЕТ САМОСТОЯТЕЛЬНО! :)

(c) becensed

Файлы к статье можно скачать ЗДЕСЬ ([Ссылки доступны только зарегистрированным пользователям])
Пароль:fuckav.ru