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

hb860
30-06-2010, 01:59
Часть скрипта, где страницы вставляете , покажите
Это:
!insertmacro MUI_PAGE_WELCOME
...
и так далее
Ничего не надо, простите. Ночью спать надо, а лазию в инете :)

У вас в функции fnCustomDestroy напрочь отсуствует анализ контроллов. Каждый контрол должен иметь свою переменную для обращения к нему. Я вам написал пример для ярлыков рабочего стола и меню Пуск, посмотрите и сделайте остальное по аналогии. Я надеюсь, у вас есть строчка в скрипте вида
!insertmacro MUI_PAGE_WELCOME
Page custom fnCustomInit fnCustomDestroy
!insertmacro MUI_PAGE_INSTFILES

Если остались вопросы, задавайте

Var Dialog
Var CheckBoxSM
Var CheckBoxD
Var CheckBoxQL
Var CheckBoxA
Var GroupBox1
Var GroupBox2

Function fnCustomInit
nsDialogs::Create 1018
Pop $Dialog

${NSD_CreateGroupBox} 0 5% 100% 50% "Ярлыки программы:"
Pop $GroupBox1

${NSD_CreateCheckBox} 10 18u 70% 10% "В меню Пуск"
Pop $CheckBoxSM

${NSD_CreateCheckBox} 10 30u 70% 10% "На рабочем столе"
Pop $CheckBoxD

${NSD_CreateCheckBox} 10 42u 70% 10% "В панели быстрого запуска"
Pop $CheckBoxQL

${NSD_CreateGroupBox} 0 -25% 100% 25% "Запуск программы вместе с системой:"
Pop $GroupBox2

${NSD_CreateCheckBox} 10 -22u 70% 10% "Добавить программу в автозапуск"
Pop $CheckBoxA

nsDialogs::Show
FunctionEnd

Function fnCustomDestroy
${NSD_GetState} $CheckBoxSM $R0
StrCmp $R0 1 0 SkipSM
CreateDirectory "$SMPROGRAMS\AudioGrabber"
CreateShortCut "$SMPROGRAMS\AudioGrabber\Help.lnk" "$INSTDIR\AudioGrabber.hlp" "" "" "" "" "" "Помощь!!!"
CreateShortCut "$SMPROGRAMS\AudioGrabber\AudioGrabber.lnk" "$INSTDIR\AudioGrabber.exe" "" "" "" "" "" "AudioGrabber 1.83.0.1"
CreateShortCut "$SMPROGRAMS\AudioGrabber\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" "" "" "" "" "" "Посетить сайт автора -> AudioGrabber"
CreateShortCut "$SMPROGRAMS\AudioGrabber\Uninstall.lnk" "$INSTDIR\Uninstall.exe" "" "" "" "" "" "Удалить -> AudioGrabber с Вашей системы"
SkipSM:

${NSD_GetState} $CheckBoxD $R0
StrCmp $R0 1 0 SkipD
CreateShortCut "$DESKTOP\AudioGrabber.lnk" "$INSTDIR\AudioGrabber.exe" "" "" "" "" "" "AudioGrabber 1.83.0.1"
SkipD:
....
И так ДАЛЕЕ
...
FunctionEnd

WolfSoul
30-06-2010, 12:53
Большое спасибо за ответ.
Да эти строки в моём скрипте присутствуют...

!insertmacro MUI_PAGE_WELCOME
Page custom fnCustomInit fnCustomDestroy
!insertmacro MUI_PAGE_INSTFILES

Попробую и после отпишусь.

WolfSoul
02-07-2010, 17:27
Отлично всё получилось и работает.
Спасибо!!!
Подскажите пожалуйста как изменить выделенное красным, сделать другую надпись.

http://img641.imageshack.us/img641/3928/sshot1sj.png


И ещё.
Можно ли добавить ещё одну собственную страницу, если можно то как это сделать?

hb860
02-07-2010, 17:30
Я уже писал в этой теме ответ
Впрочем, мне самому его в справке быстрей найти
function fnCustomInit
!insermacro MUI_HEADER_TEXT "Оппа" "Виндовс рулит"
дальше ваш текст

Почитайте это file://localhost/C:/Program%20Files/NSIS/Docs/Modern%20UI%202/Readme.html
Путные вещи пишут :)

WolfSoul
02-07-2010, 23:39
Спасибо познавательная информация.
А на второй вопрос, можете ответить?
Можно ли добавить ещё одну собственную страницу, если можно то как это сделать?

hb860
02-07-2010, 23:56
Ну а что мешает написать два раза то:
Page custom fnCustomInit1 fnCustomDestroy1
Page custom fnCustomInit2 fnCustomDestroy2

Ну и сами функции напишите

Hector
06-07-2010, 16:46
Как изменить указанную надпись?
http://s56.radikal.ru/i154/1007/43/aabe75d01716t.jpg (http://radikal.ru/F/s56.radikal.ru/i154/1007/43/aabe75d01716.jpg.html)

Комсомолец
06-07-2010, 16:53
Hector, при сборке ставится плагин BrandingURL и в скрипте записываются данные строки.

Hector
06-07-2010, 16:57
Чтобы изменить одну строку текста нужен плагин?

Habetdin
06-07-2010, 21:39
Hector, в скрипте стерите строку BrandingText
ЗЫ: убирать копирайты плохо. Чем вам эта строка мешает? :)

Hector
06-07-2010, 21:44
в скрипте стерите строку BrandingText »
где именно?
насчет копирайтов, это картинка для примера, к Lisbon'y отношения не имеет.

Habetdin
06-07-2010, 22:02
где именно? »
Откуда я знаю где у вас в скрипте эта строка? :)
Ищите "BrandingText блаблабла"

Hector
06-07-2010, 22:08
Habetdin, я ж говорю, картинка для примера, готового скрипта нет, я пишу его с нуля, и хочу заменить дефолтовую фразу Nullsoft Install System v2,46 внизу окна на свою

Habetdin
06-07-2010, 22:10
Hector, BrandingText "Мой текст :P"

Hector
06-07-2010, 22:13
понял, спасибо

yugorian
09-07-2010, 21:23
Мне потребовалось сделать инсталлятор с возможностью выбора только одного пункта. Прочитал учебник по NSIS, сделал как там описано - все работает. Однако, поскольку эти элементы однотипные, захотел их поместить в SectionGroup, но тут вышла заминка - если нажать на серый чекбокс заголовка группы секций, то реакция получается не очень адекватная - выбирается второй пункт к тому что уже выбран по дефолту. Подскажите пожалуйста, можно ли и как установить игнорирование нажатия на чекбокс заголовка группы секций?

hb860
09-07-2010, 21:57
Насколько мне известно, нет

Krinkels
12-07-2010, 12:41
Друзья, помогите прояснить такой момент: как в NSIS в зависимости от выбранного языка записать в ini определенную строчку?

hb860
12-07-2010, 19:55
Krinkels,
В этой статье (http://winreview.ru/NSIS/47/Sozdanie-svoego-installyatora-na-NSIS.-Sektcii-i-vibor-komponentov) внизу расписано с примерами

Krinkels
15-07-2010, 23:03
Создал я свою страничку с 3-мя RadioButton, но на ней кнопки: "<Назад" "Далее>" "Отмена" действуют одинаково, т.е. выполняют действие отмеченное в RadioButton. Можно ли как то это исправить?




© OSzone.net 2001-2012