Exepack.NET 0.02 alpha
Не прошло и года, как я доделал Windows-версию упаковщика Exepack.NET. Правда, помимо интерфейса WinForms тут добавлена еще целая куча разных улучшений.
Консольную и GUI-версии программы вместе с исходниками можно взять на сайте проекта. Среди прочего в исходниках лежит и концептуальная версия (минимальный скелет программы без каких-либо наворотов), по которой можно разобраться, как все это работает. Концептуальная версия описана в нескольких прошлых постах: часть 1, часть 2, часть 3.
Системные требования:
- .NET Framework версии 2.0 или выше (используется DeflateStream)
- Windows XP или выше (используются системные процедуры для загрузки ресурсов)
Новые возможности версии 0.02 alpha:
- Исполняемый файл генерируется с помощью Reflection.Emit
- Ресурсы иконок и VersionInfo копируются из исходного файла
- В Windows-версии можно добавлять в список дополнительные сборки для упаковки в тот же исполняемый файл
- Добавлена защита от дизассемблирования Red Gate .NET Reflector-ом
- Ну и, разумеется, добавлены новые исправлены старые ошибки.
Справа — скриншот Рефлектора, который пытается декомпилировать упакованный файл. Попытка декомпилировать в C# (и любой другой высокоуровневый язык) приводит к ошибке. Дизассемблирование в IL, разумеется, работает, как и ILDasm (любую программу, которая загружается и запускается под .NET Framework, можно дизассемблировать в IL-код).
P.S. Стоит иметь в виду, что это по-прежнему альфа-версия. Любое использование исключительно на свой страх и риск. Замечания об ошибках и неполадках приветствуются.
Ув. разработчик. В программе выявлен серьезный баг. Вот его скрин
http://s40.radikal.ru/i090/1008/a4/a950ffe1c7e7.jpg
Такая ошибка появляется при попытке открытия системных файлов или библиотек
Можно сделать например так
http://s41.radikal.ru/i093/1008/1d/8589e8c98ef1.jpg
Тогда пользователь будет видеть что произошла ошибка
Программа полезная, желаю удачи в дальнейшей разработке
Привет!
Первый багрепорт на русском языке
Спасибо большое, исправлю обязательно.
Привет!
Хорошая штука, но, при первом беглом знакомстве -
[ + ]
1. Достаточно шустро работает
2. Деобфуцировать попробовал пока с помошью – Telerik JustDecompile Beta, результат вроде нормальный (не углублялся)
[ - ]
1. Нет возможности выбирать, какие DLL приклеивать к результирующему файлу (packed), а какие нет (некий аналог SmartAssembly\Dependencies Merging), просто хотел чтобы он упаковал только EXE`шник
2. Скормил Exepack`у свой EXE, который до этого обфусцировал с помощью SmartAssembly – EXE не взлетело.. а хотелось бы чтобы взлетело
3. Если при добавлении файла выбран неподдерживаемый файл, то ошибка не обрабатывается (тоже самое, если внутренний референс не найден)
[ * ]
1. Чисто для тестов (лень идти в папку с приложением) хочется чтобы находил приложение по ярлыку, который перемещен в Exepack (drag&drop)
Удачи!
Привет, МТМ!
Спасибо за обзор.
>Деобфуцировать попробовал пока с помошью – Telerik JustDecompile Beta,
>результат вроде нормальный
Что значит — нормальный?
Не дизассемблировалось?
>Нет возможности выбирать, какие DLL приклеивать
Давно собираюсь сделать.
Никак руки не дойдут.
>Скормил Exepack`у свой EXE который до этого обфусцировал
>с помощью SmartAssembly – EXE не взлетело…
Хотелось бы подробностей.
WPF в этом EXE случайно не используется?
При упаковке EXE без SmartAssembly — работало?
Можешь прислать свой файл — исходный вариант и после SmartAssembly?
>ошибка не обрабатывается
Это явно бага, надо исправлять.
>хочется чтобы находил приложение по ярлыку
Неплохая идея.
Сделай, пожалуйста, feature request на сайте проекта:
http://exepack.codeplex.com/workitem/list/basic
WPF не используется. После SA до Exepacka работает.
Вот ссылка на пример, весит ~40Mb, ну чтобы на конкретном примере
1. http://turbobit.net/7f02lems3w2c/Exepack Test.rar.html
2. http://turbobit.net/7f02lems3w2c.html
3. http://www.easy-share.com/DFFFF4A6E2E211E09676002481FAD55A/Exepack%20Test.rar
ЗЫ: Файло-помойками редко пользуюсь, поэтому выложил туда, что яндекс первым предложил..
Да, про «feature request» забыл сказать.. Я там не зареган, и пока не собираюсь, так что сорри..
Привет.
Вернулся из отпуска и с большим опозданием заметил твой пост.
За это время срок хранения файлов, по-видимому, истек — скачать уже нельзя.
Не сохранился ли у тебя этот архив где-нибудь?
>Я там не зареган, и пока не собираюсь, так что сорри..
Да неважно, это я и сам завести могу.