Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору 0x000BLAh Дружище, не путайте! $TEMP переменная обозначающая системную временную папку и её значение определяется динамически в момент запуска инсталлятора. И в том, что здесь Вы ошиблись Вас убедит справка NSIS раздел 4.2.3 Constants (для NSIS v2.4.5): Цитата: $TEMP The system temporary directory (usually C:\Windows\Temp but detected at runtime). | Цитата: $TEMP системный временный каталог (например C:\Windows\Temp детектируется при выполнении). | И по второму вопросу Вы так же были не внимательны: Цитата: Currently NSIS installers cannot be fully decompiled. The installer itself doesn't provide any method to extract files or the script without installation. It is the developer's choice whether the source code and/or the files for the installer are available to the public or not. There are, however, external tools that allow this. 7-zip (version 4.40beta at the time of this writing) supports decompressing NSIS installers compressed with lzma or bzip, but the source code is still partially compiled and requires extensive modification before the script can be recompiled. A decompression plug-in is also available for TotalCommander. As a general note to software developers, you should use a plugin like DCryptDll if you need to protect certain files in your installer. | Цитата: В настоящее время инсталляторы NSIS не могут быть полностью декомпилированы. Программа установки сама по себе не предоставляет никаких способов извлечения файлов или сценария без установки. По выбору разработчика исходный код и / или файлы установки, могут быть сделаны доступными для общественности. Есть, однако, внешние инструменты, которые позволяют частично распаковать инсталлятор. 7-Zip (версия 4.40beta на момент написания этого документа) поддерживает распаковку инсталляторов NSIS сжатых алгоритмами LZMA или BZIP, но исходный код требует доработки, прежде чем этот сценарий может быть перекомпиляции. Плагины декомпрессии также доступны для TotalCommander. В общем плане, разработчики программного обеспечения, должны использовать плагины, как такие как DCryptDll для защиты определенных файлов в Вашей установке. | Так что Вы неверно поняли описания плагина и причины невозможности полной декомпиляции NSIS программ - код сценария компилируется в объектный байт-код шифруемый по алгоритму RC4 с ключом шифрования длинной 1024 бита, и потом его целостность проверяется при запуске установки по алгоритму MD5. Да, у NSIS есть одна особенность - в начале установки, если ему достаточно места в некоторых случаях часть файлов могут быть распакованы на тот же носитель с которого запущена установка, но, для этого надо приложить огромные усилия в направлении написания кривого до предела сценария. Это надо очень сильно постараться чтобы такой сценарий написать. Я за всё время только пару таких случаев встретил, и то виной были ошибки в .onInit - в обоих случаях автор приравнивал переменную $PLUGINSDIR к $EXEDIR командой StrCpy $PLUGINSD IR$EXEDIR. В этом случае и возникала ошибка. Надеюсь Вы понимаете, что это ошибка и так не делаете в своих программах?
---------- Жив курилка! (Р. Ролан, "Кола Брюньон") Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti |
| Всего записей: 33230 | Зарегистр. 31-07-2002 | Отправлено: 05:12 28-10-2009 | Исправлено: Victor_VG, 05:14 28-10-2009 |
|