PDA

Показать полную графическую версию : [архив].: NSIS - все вопросы :.


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 [41] 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170

MKN
29-09-2010, 15:09
открываем ${NSISDIR}\Include\defines.nsh »
Нет у меня такой библиотеки. (и тут http://nsis.sourceforge.net/Include/ - не значится) Или она доустанавливается отдельно ?

kotkovets
29-09-2010, 16:41
открываем ${NSISDIR}\Include\defines.nsh »
${NSISDIR} - это папка куда установлен NSIS...(C:\Program Files\NSIS)
извиняюсь, defines.nsh - не идет в стандартной комлектации,..это по моему для плагинов, заголовочный файл.

MKN
29-09-2010, 16:43
kotkovets,
Дык, где всё-таки про расшифровку $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $R0, $R1, $R2, $R3, $R4, $R5, $R6, $R7, $R8, $R9 узнать ?

kotkovets
29-09-2010, 16:56
Дык, где всё-таки про расшифровку... »
Ну вы сами сказали, статистические переменные, изначально в NSIS заложена такая возможность.

MKN
29-09-2010, 17:05
kotkovets,
Мне не ясно, что каждая из них означает и в каких случаях используется.
Когда, к примеру, используются $R0, $R1, а когда $0, $1 ? И почему именно они ?

kotkovets
29-09-2010, 17:57
Мне не ясно, что каждая из них означает и в каких случаях используется »
Дык в любых, на вкус и цвет... :) хоть $0 или $R9 не важно.

MKN
29-09-2010, 18:01
kotkovets,
Мдя... Ясности не появилось... Можно конкретный пример с подробными комментариями ?

kotkovets
29-09-2010, 18:23
что каждая из них означает »
Изначально ничего.. но хранить или записать значение можно и использовать в своих задачах...:)
ReadRegStr $1 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion" "ProgramFilesDir"
MessageBox MB_OK "$1"
Вместо $1 можно записать от $0 до $R9.
Свои переменные объявляем, если стандартных не хватает,бывает часто..если много фич и проверок в инсталляторе.

Var MKN
...
ReadRegStr $MKN HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion" "ProgramFilesDir"
MessageBox MB_OK "$MKN "
Суть тоже не изменится :)
ReadRegStr $1 HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion" "ProgramFilesDir" - Читаем реестр результат в $1

XCV
29-09-2010, 22:08
Уважаемые эксперты, подскажите пожалуйста как реализовать в nsis следующее:
во время установки инсталятор выполняет определенные действия, после чего выдает сообщение: "установка продолжится после перезагрузки компьютера нажмите "ок" чтобы перезагрузить компьютер сейчас или "отмена" чтобы перезагрузить компьютер позже." После чего либо перезагрузить компьютер (кнопка "ок") и самостоятельно вновь запустить установку, либо просто закрыть инсталятор, а после перезагрузки пользователем самостоятельно вновь запуститься. Еще одно пожелание если инсталятор был запущен с ключем "/S" то он должен вести себя как будто была нажата кнопка отмена, но после перезагрузки он самостоятельно запустился бы, но с ключем "/S".
Это возможно реализовать? или хотя бы часть этого?
ЗЫ: заранее спасибо.

kotkovets
30-09-2010, 00:06
Это возможно реализовать? »
Можно.
Если все сделать как вы написали, то нужно проверку делать, че установилось(как у Alcohol 120%),
а то получится вечный запуск или сообщение: перезагрузить или нет.. :)

XCV
30-09-2010, 00:54
проверку делать »
с этим я уже разобрался, зацикливания не будет...
Можно. »
сори за наглость, а можно поподробнее =)

kotkovets
30-09-2010, 01:17
а можно поподробнее »
Легко!
Section
;скрипт
IfFileExists "Путь к файлу че установилось" Not_Install ;если что то установилось переход Not_Install
IfSilent Silent
MessageBox MB_OKCANCEL "Установка продолжится после перезагрузки!$\r$\n\
Перезагрузить компьютер сейчас?" IDCANCEL CANCEL
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" "Setup" '"$EXEPATH"'
;здесь выполнение скрипта будет только с обычным запуском
Reboot ;перезагрузка
CANCEL:
Quit ;Выход, если пользователь нажал кнопку отмена
Silent:
;здесь выполнение скрипта будет только с ключом /S !!!
WriteRegStr HKCU "SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" "Setup" '"$EXEPATH /S"'
;продолжение скрипта
Not_Install:
SectionEnd

MKN
30-09-2010, 09:01
хранить или записать значение »
Т.е. это своеобразныйи указатель на сохраняемое, типа как в регистре, значение ? И далее можно оперировать именно этим указателем-регистром, а не самими значениями ? Если так , то ясно и почему бы в справке сразу так не указать...

Только возникает ещё вопрос - почему их только 20 (а вдруг надо 50 ?) и почему они именно таким образом обозначены (а не $A $B $C или просто вольно - $фигня1, 2 и т.д. ) ? И чем они в таком случае отличаются от назначаемых(объявляемых) мной переменных ?

kotkovets
30-09-2010, 09:10
Т.е. это своеобразныйи указатель на сохраняемое, типа как в регистре, значение ? И далее можно оперировать именно этим указателем-регистром, а не самими значениями ? »
Совершенно верно!
Только возникает ещё вопрос - почему их только 20 »
Никогда таким вопросом не задавался.Скриптовый язык NSIS отдаленно смахивает на язык С\С++, вот и оттуда, может
тянутся хвосты.

XCV
30-09-2010, 09:14
ещё вопрос, можно ли при помощи nsis создать службу? если да то какой командой?

kotkovets
30-09-2010, 11:30
ещё вопрос, можно ли при помощи nsis создать службу? »
http://nsis.sourceforge.net/NsSCM_plug-in
http://nsis.sourceforge.net/Services_plug-in

mshak
04-10-2010, 11:55
Подскажите, можно ли средствами NSIS создавть вирульные каталоги IIS?

kotkovets
04-10-2010, 12:31
вирульные каталоги... А ето че такое?

mshak
04-10-2010, 13:23
если у Вас установлен IIS (Internet Information Services) (это WEB сервер от Microsoft) выберите в нем свой веб-узел. и в менюшке - создать - виртуальный каталог... а дальше там все понятно :)

kotkovets
04-10-2010, 14:20
mshak,
Честно и не знаю, не задавался таким вопросом.
http://nsis.sourceforge.net/Category:Plugins не ходили? может там есть че....




© OSzone.net 2001-2012