Ленивый кусок мяса
Сообщения: 1986
Благодарности: 723
|
Профиль
|
Сайт
|
Отправить PM
| Цитировать
Цитата dracosha:
страничка 1
"название папки в меню пуск" и "создавать папку в меню пуск или нет"
|
читать дальше »
В начале кода (вставляем в зависимости от того, на каком этапе хотим видеть):
Код:
var ICONS_GROUP
!define MUI_STARTMENUPAGE_DEFAULTFOLDER "Моя программа"
!insertmacro MUI_PAGE_STARTMENU Application $ICONS_GROUP
В "-post" секцию добавить
Код:
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
Прописываем создание ярлыков в старт меню
!insertmacro MUI_STARTMENU_WRITE_END
Цитата dracosha:
страничка 2
тут я хочу разместить кнопки для создания ярлыков на рабочем столе и в панели быстрого запуска
|
читать дальше »
Код:
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
Page custom MyDialog_Shortcuts ""
!insertmacro MUI_PAGE_FINISH
Код:
Function MyDialog_Shortcuts
setoutpath $PLUGINSDIR
file "shortcuts.ini"
InstallOptions::initDialog /NOUNLOAD "$PLUGINSDIR\shortcuts.ini"
InstallOptions::show /NOUNLOAD
ReadINIStr $0 "$PLUGINSDIR\shortcuts.ini" "Field 1" "State"
StrCmp $0 "1" 0 NoDesktopShortcuts
# Отмечена галка на создание на рабочем столе, здесь прописываем команды
NoDesktopShortcuts:
ReadINIStr $0 "$PLUGINSDIR\shortcuts.ini" "Field 2" "State"
StrCmp $0 "1" 0 NoQuicklaunchShortcuts
# Отмечена галка на создание в панели быстрого запуска, здесь прописываем команды
NoQuicklaunchShortcuts:
FunctionEnd
Скачайте прикреплённый файл, распакуйте файл "Shortcuts.ini" в папку с вашим скриптом
Цитата NoName01.cpp:
Но есть у меня вопрос. В моем инсталляторе 3 секции. Как мне сделать так, чтобы страница появлялась только при условии, что выбрана например первая секция.
Какое условие мне сюда добавить:
Function nsDialogsPage
nsDialogs::Create 1018
nsDialogs::Show
FunctionEnd
|
читать дальше »
Вам необходимо создать глобальную переменную и назначить ей "1" в секции, далее проверяете в функции...вообщем давайте я сразу к коду
Код:
var Sec1_Is_Checked
Section /o "Моя секция №1"
Strcpy $Sec1_Is_Checked "1"
SectionEnd
Function nsDialogsPage
StrCmp $Sec1_Is_Checked "1" 0 Sec1_NOT_Checked
nsDialogs::Create 1018
nsDialogs::Show
Sec1_NOT_Checked:
FunctionEnd
Можно конечно обойтись без создания переменной, командами "SectionGetFlags", если хотите сделать так, то посмотрите мои ранние посты, там я давал примеры, как определить, отмечена секция или нет
А если смотреть лень говорите - напишу
|
-------
[Справочник по командам Windows] -- [Справочник по NSIS] -- [SFX Creator - для создания SFX архивов]
Отправлено: 03:15, 25-01-2010
| #343
|