|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » .: NSIS - все вопросы :. часть 2. |
|
.: NSIS - все вопросы :. часть 2.
|
Ветеран Сообщения: 1216 |
Профиль | Отправить PM | Цитировать
Данная тема предназначена для обсуждения вопросов, связанных с инсталлятором Nullsoft Scriptable Install System, или просто NSIS. Сайт приложения. Описание: Текущая версия: NSIS 3.05 от 15 декабря 2019 года Скачать | Архив сборок версии Первая часть этой темы Скачать первую часть этой темы одним архивом ВНИМАНИЕ! прежде, чем задать вопрос, почитайте, где Вы найдете ответы на большинство вопросов: Справочник по NSIS - создан силами нашего сообщества. Руководство пользователя. Перевод – Поляков А.В, зеркало Документация Утилиты разработчика Расширение функциональности Примеры скриптов на нашем форуме Скрипт NSIS для перепаковки AIMP2+Сборки Тема для Notepad++(пример парсинга XML) Достоинства Ещё немного полезной информации: |
|
------- Отправлено: 12:02, 09-12-2012 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать MaGoth,
Чтобы что то подсказать, нужно видеть твой код... |
Отправлено: 15:12, 16-04-2019 | #2271 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 126
|
Профиль | Отправить PM | Цитировать Цитата MKN:
!define PRODUCT_NAME "Winamp" !define PRODUCT_VERSION "5.5.4.2147" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !include "MUI2.nsh" !include "nsDialogs.nsh" !include "LogicLib.nsh" SetCompressor /SOLID lzma !define MUI_ABORTWARNING !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\winamp.ico" !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" !define MUI_CUSTOMFUNCTION_GUIINIT myGuiInit !define BRANDING "RePack by D!akov" ;\Unicode\Contrib\Graphics\Icons Var dlg Var Label Var Check Var Check1 Var Check2 Var CheckBox Var CheckBox1 Var CheckBox2 Var Radio Var Radio1 Var RadioButton Var RadioButton1 Var ImageHandle Var Image !insertmacro MUI_PAGE_WELCOME Page custom PageInit PageDestroy !insertmacro MUI_PAGE_DIRECTORY !insertmacro MUI_PAGE_INSTFILES !insertmacro MUI_PAGE_FINISH !insertmacro MUI_LANGUAGE "Russian" ; Описание фаqла /*VIProductVersion "${PRODUCT_VERSION}" VIAddVersionKey /LANG=${LANG_RUSSIAN} "CompanyName" "RePack by D!akov" VIAddVersionKey /LANG=${LANG_RUSSIAN} "FileDescription" "${PRODUCT_NAME} ${PRODUCT_VERSION}" VIAddVersionKey /LANG=${LANG_RUSSIAN} "FileVersion" "${PRODUCT_VERSION}" VIAddVersionKey /LANG=${LANG_RUSSIAN} "LegalCopyright" "Копирайт © D!akov, 2019. Все права защищены." */ ; Конец описания файла Name "${PRODUCT_NAME}" Caption "Установка ${PRODUCT_NAME} ${PRODUCT_VERSION}" UninstallCaption "Удаление ${PRODUCT_NAME} ${PRODUCT_VERSION}" OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe" InstallDir "$PROGRAMFILES\Winamp" ShowInstDetails show ShowUnInstDetails show BrandingText "${BRANDING}" Function .onInit InitPluginsDir ;иницилизируем рабочую папку, куда будут распакованы картинки File "/oname=$PLUGINSDIR\nsis-r.bmp" "${NSISDIR}\Contrib\Graphics\Header\nsis-r.bmp" File "/oname=$PLUGINSDIR\orange-r.bmp" "${NSISDIR}\Contrib\Graphics\Header\orange-r.bmp" FunctionEnd Function PageInit !insertmacro MUI_HEADER_TEXT "Выбор типа и компонентов установки" "..." nsDialogs::Create 1018 Pop $dlg ${NSD_CreateLabel} 0u 0u 120u 12u "Пожалуйста, сделайте выбор:" Pop $Label ;; ${NSD_CreateRadioButton} 0u 14u 150u 12u "Установка Winamp 5.623 Build 3199 Pro" Pop $RadioButton ${NSD_SetState} $RadioButton 1 ;делаем радиобутон отмеченным ${NSD_OnClick} $RadioButton RadioButton ;событие отметки радиобутона ;; ${NSD_CreateRadioButton} 0u 28u 160u 12u "Распаковка Winamp 5.6.2.3199 Pro Full Final" Pop $RadioButton1 ${NSD_OnClick} $RadioButton1 RadioButton1 ;событие отметки радиобутона ;; ${NSD_CreateCheckBox} 0u 100u 120u 12u "Ярлык(и) на рабочем столе" Pop $CheckBox ${NSD_SetState} $CheckBox 1 ;; ${NSD_CreateCheckBox} 0u 115u 100u 12u "Ярлыки в меню «Пуск»" Pop $CheckBox1 ${NSD_SetState} $CheckBox1 1 ;;;;;;;;;; ${NSD_CreateCheckBox} 150u 115u 140u 12u "Установить набор скинов" Pop $CheckBox2 ${NSD_SetState} $CheckBox2 1 ;;;;;;;; ${NSD_CreateBitmap} 180u 0u 100% 100% "" ;создаем контрол для картинок Pop $Image ${NSD_SetImage} $Image "$PLUGINSDIR\nsis-r.bmp" $ImageHandle ;загружаем картинку nsDialogs::Show ${NSD_FreeImage} $ImageHandle ;удаляем картинку FunctionEnd Function switching ${NSD_GetState} $RadioButton $Radio ;снимаем статус отметки радиобуттона ${If} $Radio == 1 ;если радибуттон "Установка обычной версии" отмеченный то... EnableWindow $CheckBox 1 EnableWindow $CheckBox1 1 EnableWindow $CheckBox2 1 ${NSD_SetState} $CheckBox 1 ${NSD_SetState} $CheckBox1 1 ${NSD_SetState} $CheckBox2 1 ${NSD_FreeImage} $ImageHandle ;удаляем картинку ${NSD_SetImage} $Image "$PLUGINSDIR\nsis-r.bmp" $ImageHandle ;загружаем картинку ${Else} ;если радибуттон "Установка обычной версии" неотмеченный то... EnableWindow $CheckBox 0 ;затеняем чекбокс EnableWindow $CheckBox1 0 ;затеняем чекбокс EnableWindow $CheckBox2 0 ;затеняем чекбокс ${NSD_SetState} $CheckBox 0 ;делаем чекбокс неотмеченным ${NSD_SetState} $CheckBox1 0 ;делаем чекбокс неотмеченным ${NSD_SetState} $CheckBox2 0 ${NSD_FreeImage} $ImageHandle ;удаляем картинку ${NSD_SetImage} $Image "$PLUGINSDIR\orange-r.bmp" $ImageHandle ;загружаем картинку ${EndIf} FunctionEnd ;функции события отметки радиобуттонов Function RadioButton Pop $RadioButton Call switching FunctionEnd Function RadioButton1 Pop $RadioButton1 Call switching FunctionEnd Function PageDestroy ;функция которая выполняется при закрытии кастомной станички ;снимаем статусы отметок радиобуттонов и чекбоксов ${NSD_GetState} $RadioButton $Radio ${NSD_GetState} $RadioButton1 $Radio1 ${NSD_GetState} $CheckBox $Check ${NSD_GetState} $CheckBox1 $Check1 ${NSD_GetState} $CheckBox2 $Check2 FunctionEnd Section "-Обычная установка" ${If} $Radio == 1 SetOutPath "$INSTDIR\Winamp" File /r "C:\Winamp\*.*" SetShellVarContext all /*CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}" WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Nullsoft" "" "" WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Nullsoft\Winamp" "regname" "D!akov" WriteRegStr HKEY_LOCAL_MACHINE "SOFTWARE\Nullsoft\Winamp" "regkey" "~AYKPaDABBRfbBTiZGjQO" ExecWait '$INSTDIR\winamp.exe /REG=LCAD'*/ WriteUninstaller "$INSTDIR\uninst.exe" /*CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\Удалить ${PRODUCT_NAME}.lnk" "$INSTDIR\uninst.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$INSTDIR\winamp.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "${PRODUCT_VERSION}" Delete "$INSTDIR\Winamp" ;;; ;тут пишем все команды при обычной установке*/ ;DetailPrint "Обычная установка" ;;; ${EndIf} SectionEnd Section "-Распаковка портативной версии" ${If} $Radio1 == 1 ;;SetOutPath "$INSTDIR" ;;File /r "D:\Winamp\WinampPortable\*.*" SetShellVarContext all ;тут пишем все команды при распаковки портативной версии MessageBox MB_OK "Портативная версия распакована в текущую папку." ;;; ${EndIf} SectionEnd Section "-Ярлыки" ${If} $Check == 1 CreateShortCut "$Desktop\${PRODUCT_NAME}.lnk" "$INSTDIR\winamp.exe" ;;; DetailPrint "Ярлык на рабочий стол" ;;; ${EndIf} ${If} $Check1 == 1 CreateShortCut "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME}.lnk" "$INSTDIR\winamp.exe" ;;; DetailPrint "Ярлык в меню Пуск" ;;; ${EndIf} SectionEnd Section "-Скины" ${If} $Check2 == 1 ;;SetOutPath "$PROGRAMFILES\Winamp\Winamp\Skins" ;;File /r "C:\Winamp\Skins\*.*" SetShellVarContext all ;;; ${EndIf} SectionEnd Section Uninstall SectionEnd Зы, Мой НСИС Юникодный 2.50, если что.. |
|
Отправлено: 21:11, 16-04-2019 | #2272 |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать Цитата MaGoth:
|
|
Отправлено: 23:57, 16-04-2019 | #2273 |
Пользователь Сообщения: 126
|
Профиль | Отправить PM | Цитировать Цитата Flix:
Интересно а в той функции было что-нить полезное, и почему ее нет в коде.. автор зажал? Вопрос из другой оперы. Есть плагин для выдирания срц из файла CRCCheck.dll, все бы хорошо, но он выдает в 10м виде значение, а как бы его дернуть в 16м? Для примера накидал скриптик, который выдал следующее значение для файла: CRC: 3164762915 в мессага бокс и текстовку, а оригинальный файл: CRC32: bca27323. Какой-нить конвертер с 10го в 16е существует ?! |
|
Отправлено: 01:08, 17-04-2019 | #2274 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Цитата MaGoth:
|
|
Отправлено: 10:17, 17-04-2019 | #2275 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать А почему нельзя здесь просто взять и выложить конкретные примеры команд для изменения тех же хост-файлов? Я вижу здесь какое-то маниакальное желание автора справочника, всех заставить его изучать. Почему для внесения изменений в хост-файл, в сети выложено множество готовых батников и конкретные описания команд для тех или иных операций? И ни кому в голову не приходит посылать пользователей изучать справочники и пособия, на изучение которых требуется продолжительное время, а решить вопрос требуется непосредственно в данный момент. Конечно вам большая благодарность за данный справочник, но не всем дано так вот сходу в нем разобраться.
Хочу уточнить. Мне, например, как полагаю и многим, нужен шаблон (пример) скриптовой команды для внесения новой строки в хост-файл. Кроме того, необходимо, чтобы строка не прописывалась повторно (не дублировалась) в случае, если в хосте уже имеется аналогичная. А также нужен второй шаблон скриптовой команды, но только для удаления необходимой строки из хост-файла. В батниках, примеры всех этих команд, давно уже выложены в сети. Но к сожалению до сих пор нет конвертера, работающего по аналогии с Reg2Nsis и преобразующего батники в команды NSIS-скриптов. И указанные скриптовые команды, нужны людям довольно часто, при создании тех же репаков или портативок в формате Portable.paf. Почему выложены примеры команд по созданию разных банеров, заставок и прочего, а реально необходимых примеров не найти? |
Последний раз редактировалось heloy2010, 15-05-2019 в 06:31. Отправлено: 17:35, 14-05-2019 | #2276 |
Пользователь Сообщения: 126
|
Профиль | Отправить PM | Цитировать Прив народ..
Вопрос как его перегнать в скрипт Нсиськи ?? Накатал такие строчки: ExecWait "$WINDIR\System32\sdbinst.exe -n 'GOG.com Gothic'" ExecWait "$WINDIR\SysWOW64\sdbinst.exe -n 'GOG.com Gothic'" зы.. отбой разобрался.. Но, другой вопрос нрисовался, график карты нормально определять можно чем нить через скрипт помимо левых костылей на всяких *.длл ?! |
Последний раз редактировалось MaGoth, 12-07-2019 в 18:08. Отправлено: 15:48, 12-07-2019 | #2277 |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать |
Отправлено: 12:56, 13-07-2019 | #2278 |
Пользователь Сообщения: 126
|
Профиль | Отправить PM | Цитировать Цитата Flix:
Нашел немного иной путь, но там тоже своих грабель хватает, впрочем бум разбираться.. |
|
Отправлено: 12:15, 14-07-2019 | #2279 |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать Цитата MaGoth:
|
|
Отправлено: 13:07, 14-07-2019 | #2280 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 2 | dimadr | Наборы обновлений для Windows XP/2003/Windows 7 | 267 | 14-02-2020 08:25 | |
[архив].: NSIS - все вопросы :. | kotkovets | Автоматическая установка приложений | 3387 | 09-12-2012 11:56 | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 1 | jameszero | Наборы обновлений для Windows XP/2003/Windows 7 | 1491 | 22-07-2011 22:42 | |
Выбор|модернизация процессора .:[все вопросы]:. Часть I | Myxa | Выбор отдельных компонентов компьютера и конфигурации в целом | 1845 | 01-01-2011 19:18 | |
Вопросы по создателю инсталляций NSIS | MaxDELETE | Программное обеспечение Windows | 14 | 04-07-2007 10:01 |
|