|
Компьютерный форум 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 |
Пользователь Сообщения: 55
|
Товарищи подскажите пожалуйста, есть программа "Фабрика Форматов", инсталлятор на NSIS, устанавливаю с параметров /S для тихой установки, незаметно от пользователей, но инсталлятор по дефолту ставит программу и ярлыки к ней для одного пользователя, а не для всех, есть ли какая то команда для установки "для всех"
|
Отправлено: 14:40, 27-02-2015 | #1531 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата T1cOoN:
Что касается конкретно Format Factory - в исходном коде NSIS-скрипта этого продукта такой возможности не заложено, нет упоминания о команде SetShellVarContext, которая бы создавала ярлыки для всех/только для текущего SetOutPath $_OUTDIR SetOutPath $INSTDIR\FFModules\Package File Readme.txt SetOutPath $INSTDIR\FFModules\Package\BaiDu File Baidu-TB-ASBar.exe File hao123inst.exe SetOutPath $INSTDIR\FFModules\Package\Ask File AskPIP_FF_.exe SetOutPath $INSTDIR StrCmp $_28_ 0 label_417 CreateDirectory $SMPROGRAMS\ёсКЅ№¤і§ CreateShortCut $SMPROGRAMS\ёсКЅ№¤і§\ёсКЅ№¤і§.lnk $INSTDIR\FormatFactory.exe CreateShortCut $SMPROGRAMS\ёсКЅ№¤і§\°пЦъ.lnk $INSTDIR\FormatFactory.exe /help $INSTDIR\FormatFactory.exe 2 CreateShortCut $DESKTOP\ёсКЅ№¤і§.lnk $INSTDIR\FormatFactory.exe CreateShortCut $SENDTO\ёсКЅ№¤і§.lnk $INSTDIR\FormatFactory.exe Goto label_422 label_417: CreateDirectory $SMPROGRAMS\FormatFactory CreateShortCut $SMPROGRAMS\FormatFactory\FormatFactory.lnk $INSTDIR\FormatFactory.exe CreateShortCut $SMPROGRAMS\FormatFactory\Help.lnk $INSTDIR\FormatFactory.exe /help $INSTDIR\FormatFactory.exe 2 CreateShortCut "$DESKTOP\Format Factory.lnk" $INSTDIR\FormatFactory.exe CreateShortCut "$SENDTO\Format Factory.lnk" $INSTDIR\FormatFactory.exe label_422: SectionEnd |
|
------- Отправлено: 15:18, 27-02-2015 | #1532 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Цитата K.A.V.:
Ведь надо (точнее - возможно) редактировать данные именно в скриптах .rc Если бы .rc можно было бы преобразовать в файлы .res - тогда другое дело. И вроде как для того существует консольная утилитка brcc32.exe ( из пакета Delphi). Но ни черта она у меня не работает (может требуются какие то доп DLL или ещё что. Про то, не известно...) |
|
Отправлено: 16:48, 03-03-2015 | #1533 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата MKN:
Я так всегда делаю, создаю cmd файл и запускаю консольное приложение без параметров, в основном они ругаются, если им что-то нужно В итоге видим в окне консоли: Цитата:
rc в res компилируется без проблем |
||
------- Отправлено: 07:39, 04-03-2015 | #1534 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Интересно, возможно ли в NSIS скрипте, записывать несколько переменных - в одну строку ? Просто для компактности скрипта... А то, когда назначаешь под сотню собственных переменных получается ну очень огромный столб из переменных... Вроде как, некоторые языки программирования позволяют так делать...
|
Последний раз редактировалось MKN, 06-03-2015 в 11:38. Отправлено: 11:21, 06-03-2015 | #1535 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата MKN:
Если бы я в своём SFX Creator всё пихал в один nsi файл - я бы с ума уже сошел, только главный файл насчитывает 6200 строк кода и это без дополнительных nsh файлов, которые к нему относятся, в котором валяются функции, которые не изменяются... |
|
------- Отправлено: 11:55, 06-03-2015 | #1536 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Подскажите пожалуйста, каким образом в EXE файле определить - есть ли в нём конкретная HEX строка ?
Например, для этого файла надо определить есть ли в нём такая строка : A3484BBE986C4AA9994C530A86D6487D (это признак для определения файлов AutoIt3 compiled script executable, для которых классический метод определения по сигнатуре - не подходит...) этот файл : http://rghost.ru/private/6zgqqPykN/e...fe25f76010300c Причём у разных файлов, offset разный, но строка A3484BBE986C4AA9994C530A86D6487D - неизменна |
Последний раз редактировалось MKN, 13-03-2015 в 12:32. Отправлено: 11:21, 13-03-2015 | #1537 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Чтение побайтово очень долго проходит, если искомая строка не в начале файла и если сам файл больше 5-10 Мб...
Готовый код: Function test ; Используются следующие переменные ; $0 - $7 ; $R0, $R1, $R2, $R3 Banner::show /NOUNLOAD "" Banner::getWindow /NOUNLOAD var /global banner Pop $0 GetDlgItem $banner $0 1030 StrCpy $R1 "A3484BBE986C4AA9994C530A86D6487D" StrCpy $R2 "C:\Windows\Explorer.exe" strcpy $0 $0 0 StrCpy $R0 "$R1" stget: intop $0 $0 + 1 StrCpy $R0 "$R0" -2 StrCmp $R0 "" 0 stget StrCpy $R0 "$R1" 2 ; записываем первые 2 символа, с них будем начинать чтение байтов подряд, если встретятся в файле intop $R3 $0 - 1 ; нам нужно знать, сколько последовательно байт считать, чтобы точно сверить всю последовательность байт StrCpy $1 "0" ; начальный StrCpy $5 "" FileOpen $0 "$R2" r now: StrCpy $6 0 IntOp $1 $1 + 1 FileSeek $0 "$1" SET $1 IntFmt $2 "0x%08X" $1 SendMessage $Pop2 ${WM_SETTEXT} 0 "STR:[$2] $1" FileReadByte $0 $3 StrCmp $3 "" no 0 IntFmt $4 "%02X" $3 StrCmp $4 "$R0" 0 now StrCpy $5 "$4" getBytes: IntOp $6 $6 + 1 FileReadByte $0 $3 IntFmt $4 "%02X" $3 StrCpy $5 "$5$4" StrCmp $6 "$R3" 0 getBytes StrCmp $5 "$R1" 0 now MessageBox MB_OK|MB_ICONINFORMATION "$R1$\n$\nНайдено, начиная со смещений:$\nHEX - $2$\nDEC - $1" idok end no: MessageBox MB_OK|MB_ICONSTOP "в данном файле нет таких данных" end: FileClose $0 Banner::destroy FunctionEnd Код универсальный и не привязан конкретно к твоей строке, можешь вбивать для поиска другие значения любой длины (от 4 символов), вроде работает сори за бардак в переменных, некогда прихорашивать, если нужно, думаю сам в макрос загонишь...? |
------- Отправлено: 20:30, 13-03-2015 | #1538 |
Ветеран Сообщения: 2358
|
Профиль | Отправить PM | Цитировать Цитата K.A.V.:
Может подойдёт плагин http://wiz0u.free.fr/prog/nsisFile/ ? |
|
Последний раз редактировалось MKN, 14-03-2015 в 09:47. Отправлено: 09:32, 14-03-2015 | #1539 |
Ленивый кусок мяса Сообщения: 1986
|
Профиль | Сайт | Отправить PM | Цитировать Цитата MKN:
Цитата MKN:
Function test FileOpen $2 "$EXEDIR\VirtualBox-4.3.24-98716-Win.exe" r nsisFile::FileFindBytes "$2" "A3484BBE986C4AA9994C530A86D6487D" "-1" pop $1 FileClose $2 MessageBox MB_OK|MB_ICONINFORMATION "$1" FunctionEnd Если найдено $1 = смещение по DEC |
||
------- Отправлено: 10:09, 14-03-2015 | #1540 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Инфо - [ликбез] Помощь начинающим .:[все вопросы]:. часть 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 |
|