|
Компьютерный форум 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 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Можно ли в стандартном окне мессадж-бокса
MessageBox MB_YESNO|MB_USERICON|MB_TOPMOST заменить надписи "да" и "нет" на кнопках на свои? Мне например нужно, чтобы отображалось "32" и "64". Не могу найти ничего по этому вопросу. |
------- Отправлено: 19:15, 07-12-2013 | #831 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 2371
|
Профиль | Отправить PM | Цитировать Цитата wolkow70:
|
|
Отправлено: 19:51, 07-12-2013 | #832 |
Ветеран Сообщения: 2371
|
Профиль | Отправить PM | Цитировать Ещё раз об индикации PrоgressBar_ом - реального процесса установки. Т.е. - сколько чего установилость - столько и отобразилось.
Метод вставки в код, команд приращения прогресса - громоздкий и не точный. А если сделать так : Зная объём устанавливаемых данных и вычислив объём свободного пространства на целевом диске - контролировать в процессе установки изменение объёмв целевого диска. И исходя из этого изменения - изменять длину полосы индикатора PB. Как это лучше реализовать на практике ? |
Отправлено: 12:23, 11-12-2013 | #833 |
Пользователь Сообщения: 96
|
Профиль | Отправить PM | Цитировать В справочнике имеется код создания лога установки... можно ли его переделать чтобы он считывал данные из командной строки и выводил их в окне установки файлов? exec dos плагин не может одновременно работать с параметрами /tofunc и /detailed... помогите.
|
Отправлено: 15:26, 11-12-2013 | #834 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата MKN:
Разве что ты постоянно будешь знать количество уже скопированных данных либо сколько осталось скопировать, но думаю это тоже будет проблемно контролить Цитата MKN:
Если бы подключался там интерфейс - можно было бы брать прогресс из существующего прогресса, который контролит сам инсталлер А у тебя как? Подключаешь граф интерфейс? Цитата Vincent7:
В функции при "/tofunc" вы можете вручную "кидать" данные в лог установки, который отображается на страничке прогресса установки, через использование сообщений Windows, а именно через LB_ADDSTRING Небольшой пример, как добавить данные в ListBox прогресса установки (этот код у меня в моём проекте, поэтоме переменные менять не буду, а описание сообщений Windows читайте в MSDN) SendMessage $R8 ${LB_ADDSTRING} 0 `STR:$2` SendMessage $R8 ${LB_GETCOUNT} 0 0 $3 IntOp $3 $3 - 1 SendMessage $R8 ${LB_SETTOPINDEX} $3 0 $2 - текст строки, которая добавляется $3 - количество уже существующих строк |
|||
------- Отправлено: 17:33, 11-12-2013 | #835 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата MKN:
|
|
------- Отправлено: 19:29, 11-12-2013 | #836 |
Ветеран Сообщения: 2371
|
Профиль | Отправить PM | Цитировать Если на время работы инсталлятора необходимо автоматически переключить(установить) языковую раскладку клавиатуры, то для этого существует макрос :
outfile KeyboardLayout.exe !macro LoadLangLayout LangID !define Index "Line${__LINE__}" StrCpy $8 "${LangID}" "" 2 StrCpy $8 "0000$8" System::Alloc ${NSIS_MAX_STRLEN} Pop $R0 System::Call 'user32::GetKeyboardLayoutList(i ${NSIS_MAX_STRLEN}, i R0)i.r0' StrCpy $9 1 loop-${Index}: System::Call '*$R0(i .r1)' IntFmt $2 "%08x" $1 StrCpy $3 $2 "" -4 StrCpy $4 "0x$3" IntOp $R0 $R0 + 4 StrCmp $4 ${LangID} macro_end_${Index} StrCmp $9 $0 loop_end-${Index} IntOp $9 $9 + 1 Goto loop-${Index} loop_end-${Index}: System::Call 'user32::LoadKeyboardLayoutA(t r8, i 1)i.r0' macro_end_${Index}: System::Call 'user32::ActivateKeyboardLayout(i ${LangID}, i 8)i.r0' !undef Index !macroend Section ; установка EN !insertmacro LoadLangLayout 0x0409 SectionEnd |
Последний раз редактировалось MKN, 12-12-2013 в 11:08. Отправлено: 11:00, 12-12-2013 | #837 |
Ветеран Сообщения: 3206
|
Профиль | Отправить PM | Цитировать Товарищи правильно ли я понял, что макросы редиректора WOW64
${EnableX64FSRedirection} ${DisableX64FSRedirection} на системе windows 8.1 не работают? |
------- Отправлено: 16:02, 12-12-2013 | #838 |
Ветеран Сообщения: 1216
|
Профиль | Отправить PM | Цитировать Цитата wolkow70:
|
|
------- Отправлено: 19:11, 12-12-2013 | #839 |
Пользователь Сообщения: 96
|
Профиль | Отправить PM | Цитировать K.A.V., боюсь что мне все таки нужен код логирования без использования /tofunc ... как я вам писал, после нажатия enter ничего не отправляется в окно установки...
Function LogFunction IntOp $1 $1 + 1 Pop $2 FunctionEnd section "f" StrCpy $1 0 GetFunctionAddress $0 LogFunction ExecDos::exec /NOUNLOAD /ASYNC /TOFUNC '"$SYSDIR\cmd.exe" /c $EXEDIR\sisInstall.exe extractAll I:\sku.sis D:\h' "D:\h" $0 sleep 3000 Pop $0 Pop $2 ${If} $2 = "INFO : Please insert path of folder with depot 222481 version 300092705199761674 manifest (222481_300092705199761674.manifest)" MessageBox MB_OK|MB_ICONSTOP "$2" idok ${Else} enter: FindWindow $3 "ConsoleWindowClass" "$SYSDIR\cmd.exe" SendMessage $3 ${WM_CHAR} "0x0D" "0" sleep 60 ${If} $2 = "INFO : Please insert path of folder with depot 222481 key file (222481.depotkey)" MessageBox MB_OK|MB_ICONSTOP "$2" idok goto end ${Else} goto enter ${EndIf} ${EndIf} end: sectionend |
Отправлено: 20:45, 12-12-2013 | #840 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 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 |
|