|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » [архив].: NSIS - все вопросы :. |
|
[архив].: NSIS - все вопросы :.
|
Ветеран Сообщения: 1216 |
Профиль | Отправить PM | Цитировать
|
|
Отправлено: 23:35, 17-06-2006 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Доброе время суток!!!
А не подскажете можно ли как-то перейти на предыдущую страницу Инсталлятора при некорректном выполнении основной секции ?? Если использовать Abort, отображается текущая страница с активной кнопкой "Отмена", а мне бы хотелось, чтобы инсталлятор перешел на предыдущуб страницу, ну или хотябы была активна кнопка еще "Назад" |
Отправлено: 10:36, 21-04-2011 | #1081 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата Shukaj:
Цитата Shukaj:
i.r0 - код возврата в $0 (переменная типа int, 0 или error (вообще, код возврата можно определить в библиотеке, error - возвращает system.dll - успешно или нет) Здесь я вам не помогу в написании плагина , к сожалению... О синтаксе System почитайте Docs\System\System.html и о типах переменных. Посмотрите на сайте NSIS в разделе плагины, там много плагинов идут с сырцами, попадаются и на делфи, но в основном на си. Цитата chites:
Со странички инсталляции вы уже никуда не вернетесь, только останов. Вам нужно определить условие, которое даст гарантию корректности отработки кода в секции, иначе - возврат на страничку компонентов, это условие должно проверяться, только при закрытии (переходе на стр.инсталляции) стр. компонетов. |
|||
------- Последний раз редактировалось kotkovets, 21-04-2011 в 14:12. Отправлено: 10:46, 21-04-2011 | #1082 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать Page custom fnCustomInit fnCustomDestroy !insertmacro MUI_PAGE_INSTFILES Function fnCustomInit !insertmacro MUI_HEADER_TEXT "Инициализация SQL-сервера" "Введите имя вашего SQL-сервера." nsDialogs::Create 1018 Pop $Dialog ${NSD_CreateLabel} 0 5u 100u 10u "Имя SQL-сервера" Pop $Label ${NSD_CreateText} 0 20u 100% 15u "SQLEXPRESS" Pop $Text nsDialogs::Show FunctionEnd Function fnCustomDestroy ${NSD_GetText} $Text $R0 FunctionEnd Section "MainSection" SEC01 SetOutPath "$INSTDIR" SetOverwrite on ; Файлы для установки File "upd4.sql" StrCmp $R0 "" 0 +3 ExecWait '"$INSTDIR\DATA\osql.exe" -S . -E -d hls_hc -n -i "${FILE_SQL_NAME}" -u -o "log.txt"' Goto +2 ExecWait '"$INSTDIR\DATA\osql.exe" -S .\$R0 -E -d hls_hc -n -i "${FILE_SQL_NAME}" -u -o "log.txt"' FileOpen $R0 "$INSTDIR\log.txt" "r" read: Push $R0 Call FileReadUnicode Pop $R1 Push $R1 Call Trim Pop $Report StrCmp $Report "1" done StrCmp $Report "2" done StrCmp $Report "3" done StrCmp $Report '' 0 +4 MessageBox MB_OK "Проверьте правильность ввода имени Sql-сервера" Abort Goto done Goto read done: FileClose $R0 SectionEnd |
Отправлено: 11:15, 21-04-2011 | #1083 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать chites,
Я так понял вам нужно, проверить правильность ввода имени Sql-сервера ? Делается это в функции (в вашем fnCustomDestroy) при закрытии кастомной странички К примеру, я в поле ввода имени, ничего не ввел... |
------- Отправлено: 11:29, 21-04-2011 | #1084 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать в том то и дело, что это поле может быть и пустым ... а првильность его ввода я могу проверить только при выполнении самого скрипта, который выполняется у меня в главной секции
|
Отправлено: 11:36, 21-04-2011 | #1085 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать chites, Условия определите какие вам нужны, при которых код в секции отработает нормально, иначе я ничем не помогу, я вам привел пример, когда нужно обрабатывать условия
|
------- Отправлено: 11:50, 21-04-2011 | #1086 |
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать kotkovets, спасибо за помощь и столь быстрые ответы!!! Значит я правильно понимаю, что нельзя после выполнения основной секции вернуться на предыдущую страницу? И здесь только один выход, держать пользователя на предыдущей странице пока не удостоверимся о правильности ввода? Это конечно проблематичнее (((
|
Отправлено: 11:58, 21-04-2011 | #1087 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата chites:
|
|
------- Отправлено: 12:15, 21-04-2011 | #1088 |
Пользователь Сообщения: 90
|
Профиль | Отправить PM | Цитировать Shukaj
Цитата Shukaj:
|
|
------- Отправлено: 13:35, 21-04-2011 | #1089 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Товарищи, делаю сборку Ligth Alloy прописал с ассоциациями такие команды:
StrCpy $OpenCommand "$INSTDIR\LA.exe $\"%1$\"" StrCpy $PlayCommand "$INSTDIR\LA.exe $\"%1$\"" StrCpy $QueneCommand "$INSTDIR\LA.exe $\"%1$\" /ADD" "Воспроизвести в LA" работает "Открыть в LA работает" Открыть файл двойным щелчком не работает. Приходится ткнуть кнопку воспроизведения. С оригинальным инсталлятором все работает. Что нужно поправить? |
------- Отправлено: 17:48, 21-04-2011 | #1090 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Мультимедиа - WinAmp .:[ обсуждение всех версий ]:. | ssaram | Программное обеспечение Windows | 406 | 12-02-2022 19:45 | |
WinstyleMonitor .:[все вопросы]:. | Mr dUSHA | Проект WinStyle | 331 | 12-02-2014 13:15 | |
Delphi - Delphi .: [все вопросы] :. | Serega | Программирование и базы данных | 94 | 04-05-2013 18:45 | |
Доступ - Никак не удаляются файлы (AVI и все остальные форматы) .:[все вопросы]:. | Microsoft Windows 2000/XP | 105 | 30-06-2010 11:58 | ||
Вопросы по создателю инсталляций NSIS | MaxDELETE | Программное обеспечение Windows | 14 | 04-07-2007 10:01 |
|