WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте
PECompact

Скриншот программы
Тип Упаковка исполняемых файлов
Разработчик Bitsum Technologies & Jeremy Collake
Написана на C++
Операционная система Microsoft Windows
Языки интерфейса Многоязычная поддержка (11 языковых пакетов)
Последняя версия 3.02.2 (5 мая 2010)
Тестовая версия 3.11.00.02 beta (10 декабря 2012 года)
Лицензия Shareware
Сайт bitsum.com/pecompact.php

PECompact — программа для сжатия исполняемых файлов для Windows с закрытым исходным кодом, для разработчиков и поставщиков программного обеспечения.

Описание

Утилита способна сжимать файлы с расширением *.exe, *.dll, *.ocx, *.scr и множество других, сохраняя при этом их полную работоспособность.

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

Используемый алгоритм

PECompact использует свой собственный алгоритм сжатия JCALG1 с открытым исходным кодом, который может быть свободно использован в любых и в любом приложении, а также другие алгоритмы сжатия, поскольку использует кодеки-плагины.

Преимущества

  • По желанию пользователя упаковщик допускает возможность оставить несжатыми любые данные из файла (к примеру, иконки, курсоры или другие ресурсы).
  • Многозадачная упаковка, PECompact способен в определенный момент времени выполнить сразу несколько операций над элементам данных.
  • Упаковка исполняемого файла позволяет уменьшить занимаемое программным обеспечением место.
  • Сжатие защищает программы от непрофессионального реверс-инжиниринга.
  • Позвляет создать резервную копию файла (BAK файл) перед началом упаковки для каждого файла.
  • Поддержка плагинов (как предоставляемых разработчиками, так и независимыми программистами).
  • Многоязычная поддержка языков (в том числе и русский).
  • Сжатие секции экспорта.
  • Позволяет уменьшить размер файла за счет оптимизации структуры файла, без сжатия данных.
  • Поддерживает программное и аппаратное обеспечение DEP.
  • Принудительная защита памяти.
  • Обрезание адресных привязкок.
  • Сжатые исполняемые файлы или модули запускаются и работают точно так же, как и до компрессии в Wine.
  • Внедрить водяной знак.

Недостатки

Консольная версия

PEC2.exe для тех пользователей, которые предпочитают работать в консольном режиме из командной строки.

Кроме PECompact2 в дистрибутив поставки входит файл PEC2.exe. Это тоже версия PECompact2 для Microsoft Windows, но она поддерживает только интерфейс командной строки и работает в текстовом (консольном) режиме. Консольную версию PEC2.exe удобно использовать для вызова из пакетных файлов (BAT и CMD), для запуска из командной строки или других консольных приложениях (например, в FAR Manager).

Плагины

PECompact использует кодеки, загрузчики и перехватчики, подключаемые в виде модулей (плагинов) — динамических библиотек.

Кодеки

В стандартную комплектацию программы входит несколько кодеков для сжатия, шифрования и других целей. Некоторые из них доступны только в зарегистрированной версии.

НазваниеИмя файлаАвторТипОписание
aPLibpec2codec_aplib.dllЙюрген Ибсен (норв. Jørgen Ibsen)сжатиеАлгоритм сжатия данных с минимальными запросами к ресурсам компьютера, но более медленной распаковкой, чем у FFCE.
BriefLZpec2codec_brieflz.dllЙюрген ИбсенсжатиеАлгоритм, созданный для быстрой упаковки и высокой степени сжатия.
CRC32pec2codec_crc32.dllЙюрген Ибсенпроверка целостностиПроверка контрольной суммы CRC32. При запуске файла происходит проверка его внутренней структуры, и если в нём обнаруживаются поврежденные данные, то выполнение файла прекращается, с последующим выводом сообщения на экран (см. MessageBox).
FFCEpec2codec_ffce.dllЙюрген ИбсенсжатиеЛучший алгоритм сжатия данных для маленьких по размеру файлов, также выигрывает алгоритм aPLib на сжатии больших файлов.
JCALG1pec2codec_jcalg1.dllДжереми Коллейк (англ. Jeremy Collake)сжатиеАлгоритм предназначен для высокой степени сжатия и быстрой декомпрессии с минимальными затратами памяти.
LZMApec2codec_lzma.dllИгорь Павлов и Йюрген ИбсенсжатиеАлгоритм основан на схеме сжатия данных по словарю, сходной с использованной в LZ77, и обеспечивает высокий коэффициент сжатия, лучше, чем все алгоритмы перечисленные в таблице.
MessageBoxpec2codec_messagebox.dllЙюрген Ибсенввод-вывод сообщенийПлагин, служащий для ввода-вывода сообщений в программе. К примеру, подтверждение на дальнейшее выполнение N-ой операции с файлами.
Passwordpec2codec_password.dllЙюрген ИбсеншифрованиеАлгоритм, который по желанию пользователя может установить шифрование файла по алгоритму TEA с помощью пароля.

Загрузчики

Также в программе используются загрузчики, предоставляемые компанией Bitsum Technologies и сторонними разработчиками. Для создания собственного плагина-загрузчика служит набор инструментальных средств разработки загрузчиков (Loader SDK), приобретаемый у разработчика программы — компании Bitsum Technolgoies.

НазваниеИмя файлаОписание
pec2ldr_defaultpec2ldr_default.dllЗагрузчик используемый по умолчанию.
pec2ldr_antidebugpec2ldr_antidebug.dllЗагрузчик с антиотладочным кодом.
pec2ldr_slimpec2ldr_slim.dllОблегченный аналог стандартного загрузчика, но не содержит кода для обработки ошибок импорта и других типов.
pec2ldr_eadpec2ldr_ead.dllEnhanced Anti-Debug - загрузчик, содержащий дополнительную защиту от отладки. Продается отдельно.

Перехватчики

Для обеспечения дополнительной функциональности в программу включены плагины-перехватчики API. Данные плагины содержат небольшой код, объединяемый со сжатым исполняемым файлом, и вызываемый при старте загрузчика PECompact для перехватывания импортов API.

НазваниеИмя файлаОписание
IsPacked APIpec2hooks_ispacked.dllПлагин-перехватчик API, который взаимодействует с загрузчиком PECompact и позволяет осуществить проверку, по-прежнему ли упаковано приложение или нет.
Fast importpec2hooks_fastimport.dllЭтот плагин-перехватчик является усовершенствованной разработкой функции GetProcAddress, распространяется вместе с исходным кодом. Функция использует хинты для увеличения скорости обработки таблиц импорта управляющего модуля. Выполняется бинарный поиск с полной поддержкой ускоренного экспорта.

См. также

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2025
WikiSort.ru - проект по пересортировке и дополнению контента Википедии