Хочу предложить новую фичу
Это всегда пожалуйста! К сожалению, пока что способы коммуникации с автором ограничены парой форумов, но позднее будут представлены другие способы связи.
Сейчас уже накоплен достаточно большой список будущих новшеств и исправлений, даже если Вам не удалось связаться с автором - не отчаивайтесь: возможно, желаемые функции появятся уже в ближайшем обновлении программы.
Почти со 100% гарантией НЕ попадут в программу функции, требующие сторонних (не WinAPI) библиотек, например, YARA. Исключением станет, пожалуй, только движок дизассемблера, который планируется добавить в скором будущем.
Гарантированно НЕ будут реализованы функции требущие выхода программы в интернет (например, проверка тем же Virustotal'ом) или копания в файловой системе (например, поиск файлов зависимостей).
По поводу донатов
Никаких донатов! Программа абсолютно бесплатна и передаётся в пользование безвозмездно.
Непреодолимое желание выразить благодарность будет взаимным, если просто рассказать о программе где-нибудь (без спама) или поделиться случаями, когда она пригодилась.
Требования для запуска и работы программы
ОС: MS Windows XP ServicePack 3 (но ограничений на работу в ServicePack 2 нет) и новее.
Также возможна работа с ReactOS 0.4 и новее.
CPU: любой x86-совместимый начиная с Intel Pentium III и его аналогов с поддержкой SSE.
HDD: особых требований не предъявляется; программа не записывает никаких данных, кроме файла конфигурации.
Зависимости: отсутствуют, используется исключительно WinAPI.
А где редактирование PE?
В составе этой программы его пока не будет. Скорее всего редактором станет новая программа, какой-нибудь PE Surgeon :-)
Что за DLL болтается рядом с программой?
Если речь идёт о PEAnatomist-RU.dll
, то это библиотека с ресурсами для отображения интерфейса программы на русском языке.
Эта DLL не является обязательной для работы программы и не содержит кода. Кроме того, любой код в ней будет проигнорирован.
Программа поддерживает локализацию GUI и смену языка "на лету". Внутренний формат ещё не стабилизирован, поэтому SDK для создания собственных переводов не публикуется. Пожалуйста, напишите автору, если Вы заинтересованы в переводе программы на другие языки.
Никаких других компонентов программа не требует.
Как изменить настройки программы вручную?
В первых версиях программы настройки сохранялись прямиком из памяти в виде Blob'а с добавлением примитивного контроля целостности и редактирование настроек вне программы было затруднительным.
Однако начиная с версии 0.2.0 механизм управления настройками и формат их хранения были кардинально изменены для переносимости между версиями и масштабируемости.
Теперь конфигурация программы хранится в простом текстовом виде (с оговоркой на единственную поддерживаемую кодировку UTF16LE) в виде пар "ключ=значение", по одной на строку.
Их можно редактировать вручную, соблюдая несколько правил:
- пробелы или символы табуляции перед именем ключа, после имени ключа и перед значением настройки пропускаются;
- ключ и значение настройки разделяются символом равенства;
- заключенное в кавычки значение настройки принимается полностью, как есть, это полезно для указания путей к файлам при наличии в них пробелов, точек с запятой и т.д.;
- кавычки, пробелы, символы табуляции в имени ключа недопустимы;
- точка с запятой в любой позиции строки (за исключением значения в кавычках) означает начало комментария, который завершается переводом строки.
Любое отклонение от заданных правил приведёт к пропуску строки. Настройка с неизвестным программе ключом также будет проигнорирована. Сейчас программа записывает в файл только те настройки, значения которых отличаются от значения по-умолчанию. В ближайших обновлениях программы это поведение станет опциональным.
Наличие строк с одинаковым ключом не приведёт к ошибке, но воспринята программой будет только последняя из этих строк. Исключением пока является лишь ключ wnd.RecentFilePath
для перечисления недавних файлов.
Порядок отдельных настроек в файле не имеет значения, если какая-либо из настроек не влияет непосредственно на другую.
После чтения все настройки проходят валидацию и могут быть отброшены в случае выхода вне заданных границ - как отдельным значением, так и целым набором - в случае настроек ListView.
Программа ведёт небольшой набор показателей, по которым можно найти игнорируемые настройки. Чтобы увидеть их, следует вызвать диалог "О программе" из меню, удерживая клавишу Ctrl (Ctrl+F1 не сработает).
Среди прочих диагностических данных будет интересна строка "Cr" ("Configuration reading"): первое число - количество прочитанных строк с корректным форматом значений, далее - количество прочитанных незакомментированных строк без нарушений синтаксиса, третье число - всего прочитанных строк; наконец 4 и 5 числа - номера строк первой и последней найденных ошибок.
Завершаясь, программа перезаписывает файл конфигурации невзирая на внесённые изменения. Этого можно избежать, указав в свойствах файла конфигурации атрибут "Только чтение" или добавив настройку config.ReadOnly
с отличным от нуля целочисленным значением в любой новой строке. Следует иметь ввиду, что в этом случае никакие настройки не будут сохраняться программой.