Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Nullsoft Scriptable Install System | NSIS

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117

Открыть новую тему     Написать ответ в эту тему

Nep



Moderator
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

 
NSIS (Nullsoft Scriptable Install System)
Скриптовая система создания инсталляционных пакетов от авторов Winamp

Основные характеристики:
 
  • Размер дистрибутива около 1,5 МБ
  • Наличие в базовом пакете файлов с примерами и подробной справки
  • Чрезвычайная гибкость при создании инсталляций для своих программ
  • Открытый исходный код
  • Использование различных алгоритмов сжатия (ZLIB, BZIP2, LZMA)
  • Наличие различных плагинов
     
    Новейшая версия ветки 2.х: NSIS 2.51 (от 1 апреля 2016 г., статус ветки - Old Releases)
    Новейшая версия ветки 3.х: NSIS 3.10 (от 30 марта 2024 г.)  
     
     
    Ссылки:
    NSIS: страница загрузкирусификатор ветки 2.xx (без гарантии, что подходит!)2.513.10NSIS 3 Pre-releaseNSIS 2 Pre-releaseисходники (SVN)
     
    Дополнительно: [ плагины, примеры и полезности ] • [ форум разрабочиков ] • [ Wiki ]
     
    Редактор для скриптового языка NSIS: [ скачать ] • [ домашняя страница ]
     
    NSIS Unpacker
    7-zip начиная с версии 4.40 beta поддерживает распаковку из некоторых типов инсталляций.  
    Обратите внимание, что 7za не поддерживает распаковку.
     
    Полноценного русификатора пока нет, но кто хочет, может перевести сообщения в исходных текстах NSIS и скомпилировать всё заново – это единственный корректный вариант. Из файлов поддаётся корректному переводу только меню интегратора NSIS, поскольку там HTML, а остальные переводы – это в основном "русификаторы" с непредсказуемыми последствиями применения.
     
    64-х битное развитие идей NSIS. В разработке, аннотация разработчика nsisbi.
     
    Просьба к тем, кто будет править шапку, сначала сверяться с http://nsis.sourceforge.net/Main_Page и не выдавать желаемое за действительное.

  • Всего записей: 41940 | Зарегистр. 24-06-2001 | Отправлено: 14:21 06-10-2001 | Исправлено: DimmY, 11:10 31-03-2024
    Ultmann



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    NSIS 3.08

    Всего записей: 2108 | Зарегистр. 15-12-2018 | Отправлено: 21:46 28-09-2021 | Исправлено: Ultmann, 21:48 28-09-2021
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здравствуйте! Подскажите пожалуйста, как изменить путь в переменной %USERPROFILE% на путь в пользовательскую директорию, например $EXEDIR\Data при запуске лаунчера портативной программы?
     
    В PortableApps данная опция реализуется следующим образом:
     
    ${SegmentPre}
    ${DebugMsg} 'Set %USERPROFILE% to %PAL:DataDir%'
    System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("USERPROFILE", "$DataDirectory").r0'
    !macroend
     
    Как правильно прописать эту опцию в сценарии NSIS?

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 08:15 12-11-2021
    iglezz

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010
    Так и писать

    Код:
    System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("USERPROFILE", "$EXEDIR\Data").r0'

    Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 12:31 12-11-2021
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Большое спасибо! Как оказалась, строка  
    ${DebugMsg} 'Set %USERPROFILE% to %PAL:DataDir%'  
    в сценарии для PortableApps, также не нужна.  
    Тогда еще один аналогичный вопрос по изменению пути C:\ProgramData на $EXEDIR\Data. Возможно?

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 13:59 12-11-2021
    iglezz

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010
    Подменить то возможно, вопрос только в том, заметит ли целевая программа это изменение.  
    В большинстве случаев пути к этим папкам берутся из соответствующего запроса к API, а не через чтение переменных среды.

    Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 14:11 12-11-2021 | Исправлено: iglezz, 14:12 12-11-2021
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Благодарю вас, но всё-таки, если возможно, то какую команду здесь прописать? А там уже будет видно, заметит ли целевая программа эту подмену или нет. Я так делал, только путем подмены в реестре пути в C:\ProgramData на $EXEDIR\Data на момент запуска основной программы. И сразу после запуска программы, измененное значение реестра возвращалось в исходное состояние. Но такой способ мне не кажется полностью безопасным, хотя и проблем с системой у меня ни разу не возникало.

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 15:11 12-11-2021
    iglezz

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010
    Да точно так же это делается

    Код:
    System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("ProgramData", "$EXEDIR\Data").r0'

    Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 16:41 12-11-2021
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Понял, еще раз вам спасибо за помощь!

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 17:13 12-11-2021
    Dendj

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    добавьте в шапку ссылку на 64битную
     
    https://sourceforge.net/projects/nsisbi/
     
    NSISBI стремится устранить текущее ограничение в 2 ГБ, установленное в NSIS. В этой версии добавлена поддержка использования отдельного файла для хранения данных установки, что позволяет устанавливать установщик до теоретического максимального размера 8EB (это контролируется NSIS_CONFIG_EXTERNAL_FILE_SUPPORT, это включено по умолчанию).
     
    В версиях до 7069-1 компилятор (makensis) предназначен для работы на 64-разрядных машинах, поскольку эта функция необходима для создания установщиков объемом более 2 ГБ.
     
    В версиях до 7208-1 размер исходных файлов, добавляемых в установщик, ограничен 2 ГБ на файл (это контролируется NSIS_CONFIG_LARGE_FILE_SUPPORT, это включено по умолчанию).
     
    Этот проект является результатом нескольких различных экспериментов, направленных на снижение лимита в 2 ГБ в NSIS, поэтому он все еще находится в стадии разработки. Я постараюсь обновлять его с каждым крупным выпуском NSIS.
     
    Особенности
    Допускает размер установщика более 2 ГБ
    поддержка 32- и 64-разрядных установщиков
     
     

    Всего записей: 5 | Зарегистр. 01-02-2007 | Отправлено: 14:36 17-01-2022 | Исправлено: Dendj, 14:38 17-01-2022
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Dendj
     
    Добавил ссылку на Вашу аннотацию, но и вам стоит на проекте раздел помощи открыть. Хотя бы для типовых вопросов. Судя по развитию проекта должны накопится.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    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 | Отправлено: 18:16 17-01-2022
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Dendj

    Цитата:
    Особенности
    Допускает размер установщика более 2 ГБ
    поддержка 32- и 64-разрядных установщиков

    Я заметил еще пару полезных особенностей - невозможность открытия и просмотра созданного установщика архиваторами, в частности последней версией 7-Zip. А также практическое отсутствие реакций антивирусами на VirusTotal.
    Так что большое спасибо за проделанную работу.

    ----------
    Игорь

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 15:57 23-01-2022
    WiperX



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Dendj
    Приветствую! А версия для x32 есть в наличии?

    Всего записей: 961 | Зарегистр. 17-03-2009 | Отправлено: 17:27 23-01-2022
    DimmY



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010

    Цитата:
    заметил еще пару полезных особенностей - невозможность открытия и просмотра созданного установщика архиваторами

    Это полезно? По-моему, ровно наоборот.

    Всего записей: 4718 | Зарегистр. 22-04-2002 | Отправлено: 19:45 23-01-2022
    Smitis



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    heloy2010

    Цитата:
    Я заметил еще пару полезных особенностей - невозможность открытия и просмотра созданного установщика архиваторами

    Чего же в этом "полезного"? Теперь портабельные версии нормально не обновить будет. Надеюсь, возможность разархивирования без установки всё-таки сделают.

    ----------
    Разум когда-нибудь победит

    Всего записей: 3219 | Зарегистр. 09-02-2003 | Отправлено: 20:30 23-01-2022
    dialmak



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010
    Цитата:
    невозможность открытия и просмотра созданного установщика архиваторами, в частности последней версией 7-Zip. А также практическое отсутствие реакций антивирусами на VirusTotal.

    Есть такой альтернативный проект https://github.com/negrutiu/nsis/
    Аналогично 64 битный инсталлер не разархивируется (32 битный без проблем) и VirusTotal лоялен

    Всего записей: 14007 | Зарегистр. 27-04-2013 | Отправлено: 22:32 23-01-2022 | Исправлено: dialmak, 22:39 23-01-2022
    heloy2010

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    DimmY

    Цитата:
    Это полезно? По-моему, ровно наоборот.

    Ну, это смотря для кого. Для тех, кто не любит думать своей головой, а предпочитает всё слизывать с чужих установщиков - это конечно засада.
     
    Smitis

    Цитата:
    Чего же в этом "полезного"? Теперь портабельные версии нормально не обновить будет. Надеюсь, возможность разархивирования без установки всё-таки сделают.

    С какого перепуга стало невозможным обновление портативных сборок? Основное ПО в них обновляется без проблем. И без перекомпиляции лаунчера в NSIS. А если вы хотите при этом обновить и сам лаунчер, то необходимо иметь сценарий к нему и также проблем не возникнет при компиляции.
     
    dialmak

    Цитата:
    Есть такой альтернативный проект https://github.com/negrutiu/nsis/
    Аналогично 64 битный инсталлер не разархивируется (32 битный без проблем) и VirusTotal лоялен

    С выходом  7-Zip 21.6, этот 64-битный инсталлер, уже прекрасно распаковывается и на VirusTotal у него с прошлого года появились проблемы. К тому же, на 32-разрядных системах, установщики, созданные в помощью данного NSIS-х64, не запускаются. А это не есть хорошо. Если конечно мы говорим об одном и том же NSIS 3.6.7162.2 .


    ----------
    Игорь

    Всего записей: 254 | Зарегистр. 17-05-2019 | Отправлено: 06:48 24-01-2022 | Исправлено: heloy2010, 07:41 24-01-2022
    Smitis



    Silver Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    heloy2010

    Цитата:
    С какого перепуга стало невозможным обновление портативных сборок?

    С такого, что не будет возможности распаковать дистрибутив и обновить сборку. И да, речь не про paf, как возможно Вы подумали.

    ----------
    Разум когда-нибудь победит

    Всего записей: 3219 | Зарегистр. 09-02-2003 | Отправлено: 11:06 24-01-2022
    Victor_VG



    Tracker Mod
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010
     
    Распаковка нужна для поиска своих ошибок. Например файл забыл вписать или не туда добавил - по структуре бинарника многое сразу видно. А так отладка больше времени отнимет.

    ----------
    Жив курилка! (Р. Ролан, "Кола Брюньон")
    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 | Отправлено: 11:29 24-01-2022
    dialmak



    BANNED
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    heloy2010

    Цитата:
    Если конечно мы говорим об одном и том же NSIS 3.6.7162.2 .

    Актуальная версия v3.9.7351.0

    Цитата:
    и на VirusTotal у него с прошлого года появились проблемы

    не наблюдаю такого

    Цитата:
    К тому же, на 32-разрядных системах, установщики, созданные в помощью данного NSIS-х64, не запускаются.

    Сейчас негде проверить, но сомнения, что это правда, впрочем компилирую всегда через 32 битную версию NSIS на 64 битной ОС..
    ;Target amd64-unicode
    Target x86-unicode

    плюс
    Target amd64-unicode
    ;Target x86-unicode


    Цитата:
    С выходом  7-Zip 21.6

    Это да. Благодарю за подсказку

    Всего записей: 14007 | Зарегистр. 27-04-2013 | Отправлено: 01:32 29-01-2022 | Исправлено: dialmak, 01:36 29-01-2022
    VSS

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день.
     
    Подскажите, как получить HWND окна с "градусником" (показывает копирование файлов). Не компонентов окна, а самого окна!
    Нужно послать сообщение, чтобы это окно не отображалось. Все попытки с SendMessage приводят к тому, что вместо самого окна не отображаются какие-то его элементы.

    Всего записей: 48 | Зарегистр. 17-12-2005 | Отправлено: 21:21 06-11-2022
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117

    Компьютерный форум Ru.Board » Компьютеры » Программы » Nullsoft Scriptable Install System | NSIS


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru