Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для kotkovets

Ветеран


Сообщения: 1216
Благодарности: 486

Профиль | Отправить PM | Цитировать


Цитата BSL:
необходимо дополнительно запросить к примеру порт. То есть как я понимаю перед установкой должно появиться окно с параметром. Как этого добиться? »
Если Вы так хотите сделать, то нужно делать:
1) проверить, отмечена ли нужная секция
2) Если отмечена секция вызывать соответствующий диалог и вызывать при закрытии стр. выбора компонентов.
Самый простой пример, это с использованием плагина DialogsEx
файлик DialogsEx.dll закидываем в C:\Program Files\NSIS\Plugins
и хедер dialogs.nsh закидываем в C:\Program Files\NSIS\Include
читать дальше »
Код: Выделить весь код
!include "MUI2.nsh"
!include "dialogs.nsh"

!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
 !define MUI_PAGE_CUSTOMFUNCTION_LEAVE COMPONENTSLEAVE ; функция будет выполнена при закрытии стр. компонентов.
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "Russian"

ShowInstDetails show
InstallDir "$EXEDIR"
OutFile Test.exe
Caption "Test"

Section "Port" SecPort
  MessageBox MB_OK "Номер выбраннога порта: $0" ;показываю в качестве примера значение $0
SectionEnd

Function COMPONENTSLEAVE
  ${If} ${SectionIsSelected} SecPort ;проверка выбрана ли нужная секция
    ${InputTextBox} "Окно выбора номера порта" "Введите номер порта в поле ввода..." "" "4" "" "" 0
    ;число 0 - в переменной $0 будет хранится введеное значение порта
    ;число 4 - соответствует максимально возможному количеству вводимых символов
    StrCmp $0 `` 0 +2 ;если в переменной $0 пустое значение возврат на стр. выбора компонентов
    Abort
  ${EndIf}
FunctionEnd

-------
Спасибо ВСЕМ за то, что тратите свое время, что бы ПОМОЧЬ МНЕ.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:05, 20-02-2011 | #956