Копаемся в программах..
Так что пока мою программу отложим до лучших времен, но обещаю, что обязательно ее доделаю и представлю вам в исходном виде. А пока, так как времени нет, рекомендую попробовать отличную программу, которая уже показывает в PE все, что только возможно: PE Explorer. Жаль только, что она триальная, на 30 дней.
Смотрите, как она ловко показала то, в прошлый раз мы пытались найти вручную:
Но нас все же интересовал ресурсы, поэтому просто посмотрим, как там и что. Кстати, было время проконсультироваться с умными программистами, которые подтвердили, что таки да – ресурсы хранятся в самом конце файла. И даже более того:
- Туда можно добавлять дополнительные статические ресурсы, созданные позднее самой программы (обычно картинки, музыку и т.д.).
- Делать это можно неограниченно.
- Пока запущенная программа не использует свои ресурсы, они без дела хранятся в файле на диске и не занимают память.
Конечно, большая часть советов касается не ресурсов, а того, как вставить вирус в программу, но кодом мы займемся в следующий раз. А пока – вот то, что я хотел вытащить своей программкой в виде отдельных файлов, чтобы затем, после редактирования, записать все это назад:
Видите группы? В WAVE хранятся три музыкальных файла. В Menu – те самые пункты меню, которые можно в любой момент русифицировать или перевести на свой родной язык. Если вы помните, программа умеет запоминать настройки выбора, но в самой программе они не хранятся, искать нужно в файле .ini, соответствующем данной программе.
В Dialog хранятся диалоги, покажем один из них:
Если прикинуть, что и здесь можно кое-что поменять. Бывает так, что окошки такого типа с их полями ввода плохо рассчитаны на длину реально вводимых данных, так что можно их расширить. Хоть на все окно. Manifest, Version, Accelerators, Group Icon содержат довольно скучные колоки цифр, зато BitMap – это самая ясная и понятная часть:
Вот эту графику и можно менять, но осторожно. Дело в том, что по остальным номерам этого же ресурса хранится тот же рисунок, но в черно-белом виде, или же в виде «маски» (выпуклый рисунок/утопленный рисунок). Если уж менять что-то, то нужно менять все пары. А некоторые картинки идут отдельно, так что можно поиздеваться над ними – см. № 430, где видны «улыбки».
Для каждого типа ресурса можно вызвать встроенный Редактор Ресурсов (3-я кнопка слева, с карандашом), а можно скопировать их в виде файла, чтобы отредактировать в другом проекте).
Полезен в программе раздел Tools, где может заинтересовать пункт Дизассемблер. Как мы уже говорили ранее, компиляторы в Windows не отличаются особой морокой для генерации кода – не зря же на первой странице указан «Требуемый тип процессора Intel 80386»? Вот и подумайте, будут ли использоваться все фишки вашего 8-ядерного агрегата?
Итак, с ресурсами временно решили. Программу я все же доведу до ума, а вы, не дожидаясь, можете поискать бесплатный редактор ресурсов в Сети. Когда-нибудь, да пригодится. А со следующей статьи немного поговорим о машинных кодах и ассемблере. |