[архив].: NSIS - все вопросы :.

Ответить
 • Просмотры: 9
Аватара пользователя
K.A.V.

Re: [архив].: NSIS - все вопросы :.

Сообщение K.A.V. »

Попробую повторить вопрос от
[архив].: NSIS - все вопросы :.
- ибо тема для меня важная, а ответов так и не было...

В Windows 7, Server 2008 и т.п. в ярлыках приложений во вкладке "совместимость" появилась галочка "Выполнять эту программу от имени администратора". Некоторые мои приложения (например, настройка служб моей системы) без этой галочки работают некорректно - в случае этой утилиты, система отрубает приложению доступ к SCM.

Может ли NSIS создавать ярлыки (в меню пуск, на рабочем столе) - у которых галочка "Выполнять эту программу от имени администратора" будет установлена по умолчанию? Может, есть какие расширения для этого?
Аватара пользователя
Painkiller

Re: [архив].: NSIS - все вопросы :.

Сообщение Painkiller »

Цитата SamLab:



как это победить?
[архив].: NSIS - все вопросы :.




поставлю х64 - посмотрю

Юр, вот тут глянь
http://nsis.sourceforge.net/Shortcut..._Windows_Vista



Цитата ilias_div:



Может ли NSIS создавать ярлыки (в меню пуск, на рабочем столе) - у которых галочка "Выполнять эту программу от имени администратора" будет установлена по умолчанию? Может, есть какие расширения для этого?
[архив].: NSIS - все вопросы :.




Насколько мне известно, нет
Аватара пользователя
K.A.V.

Re: [архив].: NSIS - все вопросы :.

Сообщение K.A.V. »

hb860, Спасибо - до нынешнего времени интернет был с трафиком и лазять по сетке накладно было и не мог сам найти все это безобразие
Аватара пользователя
Painkiller

Re: [архив].: NSIS - все вопросы :.

Сообщение Painkiller »

hb860, собственно у меня вопрос:



Можно ли в NSIS сделать так, к примеру, у меня есть основная секция, например, PROGRAM_BASE и один дополнительный компонент, напрмер, COMPONENT, который помещён в SectionGroup, сам COMPONENT, будет находится в $EXEDIR\Addition\COMPONENT.exe или в $EXEDIR\COMPONENT.exe, так вот сам вопрос: можно ли в самом начале установки сделать проверку на наличие COMPONENT.exe в $EXEDIR\Addition\ и в $EXEDIR\ , и если этого COMPONENT.exe нет, то скрыть всю SectionGroup, а если этот COMPONENT.exe, есть, то отобразить SectionGroup. Почитав справку, увидел что в SectionGroup нет скрытия как на Section (Section "-Any_Name" или Section # Any_Name), есть какой-то способ, чтоб реализовать мою затею? Если можно напишите небольшой пример...



И ещё, вопрос: можно ли через скрипт изменять размер, например, прогресс бара?
Аватара пользователя
K.A.V.

Re: [архив].: NSIS - все вопросы :.

Сообщение K.A.V. »

Самый простой пример, это с использованием плагина
DialogsEx






Код:

Код: Выделить всё

${InputPwdBox} "Заголовок" "Введите пароль" "" "10" "" "" 0
StrCmp $0 "Это пароль" okPass 0
MessageBox MB_ICONSTOP|MB_YESNO "Пароль неверный!!$\r$\nПовторить ввод пароля?" IDYES -2
quit
okPass:

В представленном коде, число 10 соответствует максимально возможному количеству вводимых символов

Число 0, в самом конце первой строчки означает, что введёное пользователем значение следует поместить в переменную $0
Аватара пользователя
Painkiller

Re: [архив].: NSIS - все вопросы :.

Сообщение Painkiller »

Эxх. Побольше бы такой информации и уроков !!!
Аватара пользователя
K.A.V.

Re: [архив].: NSIS - все вопросы :.

Сообщение K.A.V. »

Цитата Lisabon:



И ещё, вопрос: можно ли через скрипт изменять размер, например, прогресс бара?
[архив].: NSIS - все вопросы :.




посмотрю

На все ваши другие вопросы давно есть ответы тут:
http://forums.winamp.com/showthread.php?postid=1765792



Цитата Lisabon:



Почитав справку, увидел что в SectionGroup нет скрытия как на Section
[архив].: NSIS - все вопросы :.




Там зато написано что можно рулить флагами, что вам и требуется



Вот вам пример лично от меня:



Код:

Код: Выделить всё

!include "MUI.nsh"
!include "Sections.nsh"
SetCompressor /SOLID lzma
!define MUI_ABORTWARNING
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_LANGUAGE "Russian"
Name "Lisabon"
InstallDir "$TEMP\Lisabon"
OutFile "Lisabon.exe"
Section "CORE" CORE
	SetOutPath "$INSTDIR"
	File "d:\Test.theme"
SectionEnd
SectionGroup "Some text" sg1
	Section "message box" mb
		MessageBox MB_OK "simple message box"
	SectionEnd
SectionGroupEnd
Function .onInit
	IfFileExists "$EXEDIR\Addition\COMPONENT.exe" leavefunc
	IfFileExists "$EXEDIR\COMPONENT.exe" leavefunc
	IntOp $0 ${sg1} + 1
	!insertmacro ClearSectionFlag ${sg1} ${SF_SELECTED}		
	!insertmacro ClearSectionFlag ${mb} ${SF_SELECTED}
	!insertmacro ClearSectionFlag ${sg1} ${SF_SECGRP}
	!insertmacro ClearSectionFlag $0 ${SF_SECGRPEND}	
	SectionSetText ${mb} ""
	SectionSetText ${sg1} ""
	SectionSetText $0 ""
leavefunc:
FunctionEnd
Аватара пользователя
Painkiller

Re: [архив].: NSIS - все вопросы :.

Сообщение Painkiller »

K.A.V. , я просто не знаю возможностей языка NSIS. Можете хоть описать хоть в вкратце что ещё можно прикрутить к установщику ? Хотя знаю что всё описать не возможно, но из самое интересного?
Аватара пользователя
K.A.V.

Re: [архив].: NSIS - все вопросы :.

Сообщение K.A.V. »

Цитата hb860:



Цитата ilias_div:

Может ли NSIS создавать ярлыки (в меню пуск, на рабочем столе) - у которых галочка "Выполнять эту программу от имени администратора" будет установлена по умолчанию? Может, есть какие расширения для этого? »

Насколько мне известно, нет
[архив].: NSIS - все вопросы :.




Понятно

Впрочем, если кому интересно, проблему запуска программы под семеркой с админскими правами решил с помощью манифеста, как описано
здесь
или
здесь
Аватара пользователя
It4a

Re: [архив].: NSIS - все вопросы :.

Сообщение It4a »

Цитата lmiol:



я решил скомпилить FirefoxPortable.nsi
[архив].: NSIS - все вопросы :.




Зачем?

Простите за оффтом, но
вот вам мануал
, как сделать это приложение портативным
Ответить

Вернуться в «Автоматическая установка приложений»