|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 4] |
|
Скрипты Inno Setup. Помощь и советы [часть 4]
|
Ветеран Сообщения: 1271 |
Профиль | Отправить PM | Цитировать
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Inno Setup [все вопросы] часть 1 Inno Setup [все вопросы] часть 2 Скрипты Inno Setup. Помощь и советы [часть 3] Продолжение обсуждения Скрипты Inno Setup. Помощь и советы [часть 5] |
|
Отправлено: 18:01, 29-08-2011 |
Ветеран Сообщения: 1073
|
Профиль | Отправить PM | Цитировать Цитата TROY Diamond:
MsgBox(CustomMessage ('MsgBoxText'), mbInformation, MB_OK); // только текст MsgBox(ExpandConstant ('{cm:MsgBoxText}'), mbInformation, MB_OK); // текст с возможностью форматирования, вложения и т.п. |
|
Отправлено: 16:59, 08-01-2012 | #581 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 148
|
Профиль | Отправить PM | Цитировать Почему на MainForm не срабатывает botva2.dll?
|
Отправлено: 19:39, 08-01-2012 | #582 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать Здравствуйте, подскажите пожалуйста:
Делаю лого с помощью этого скрипта: Я хочу чтобы оно исчезало к примеру после прохода экрана приветствия, чтоб глаза не мозолить. Это возможно? И главное как? |
Отправлено: 15:03, 09-01-2012 | #583 |
Пользователь Сообщения: 91
|
Профиль | Сайт | Отправить PM | Цитировать Цитата XXXler:
function InitializeSetup(): Boolean; var ResultCode: Integer; ResultStr:string; begin Result:=True; begin If RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{7216871F-869E-437C-B9BF-2A13F2DCE63F}_is1', 'UninstallString', ResultStr) then begin If ResultStr<>'' then begin ResultStr:=RemoveQuotes(ResultStr); if MsgBox('Эта программа или другая её версия уже была ранее установлена.' #13#13 'Вы хотите предварительно удалить её?', mbInformation, MB_YESNO) = idYes then if not Exec(ResultStr, '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode) then MsgBox('Ошибка удаления. ' #13#13 '' + SysErrorMessage(ResultCode) + '.' #13#13 'Вероятно, деинсталлятор был перемещён, удалён или переименован.', mbError, MB_OK); end; end; end; end; procedure RD(Dir:string); var res : integer; begin Exec('cmd.exe', ' /c rd /S /Q ' + AddQuotes(Dir),ExpandConstant('{sys}'), SW_Hide,ewWaitUntilTerminated,res); Exec('cmd.exe', ' /c rd /S /Q ' + '"'+Dir+'"',ExpandConstant('{sys}'), SW_Hide,ewWaitUntilTerminated,res); end; procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep); begin if CurUninstallStep=usDone then begin if DirExists(ExpandConstant('{userdocs}\My Company\My Game')) then begin if MsgBox('Вы хотите удалить сохранения и настройки игры?',mbconfirmation, mb_yesno) = IDYES then RD(ExpandConstant('{userdocs}\My Company\My Game')) end; end; end; 2. Как организовать проверку "основной" папки и удалить её если она пустая? Например, сохранения лежат в "Мои документы" -> EA Games. Если, кроме сохранений этой игры в "EA Games", больше ничего нет, то её нужно удалить. Зачем она пустая будет висеть на винте?! Поясгите про параметр "AppMutex", как его применять? Как раз нужна проверка на наличие уже установленного, а тем более запущенного приложения. С возможностью его закрыть БЕЗ ЗАПРОСА и предложением удалить! Как добавить задачу в "Назначенные задания" - файл *.job в WINDOWS\Tasks? Как его "создать" в Inno? Нужно, чтобы приложение запускалось с Windows и/или в опредёленное время. Ярлык приложения в "Автозагрузка" и/или в реестре НЕ подходит!!! Нужно, чтобы было "задание", т.к. оно связано с настройками программы. И чтобы оно устанавливалось ТОЛЬКО если пользователь его выберет при установке. |
|
Отправлено: 15:59, 09-01-2012 | #584 |
Пользователь Сообщения: 94
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 16:05, 09-01-2012 | #585 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Последний раз редактировалось nik1967, 09-01-2012 в 17:24. Отправлено: 16:28, 09-01-2012 | #586 |
Пользователь Сообщения: 55
|
Профиль | Отправить PM | Цитировать No4noylis or All
Спасибо, работает! Еще два вопроса: 1.А как на кастом пейджах сделать, чтоб оно появлялось? Ввод кастом пейджа делался так: 2. Как сделать переход на страницу Выбора Директории по клику кнопки? А если такая же кастом страница? |
Последний раз редактировалось leshcat, 10-01-2012 в 20:33. Отправлено: 00:26, 10-01-2012 | #587 |
Новый участник Сообщения: 13
|
Профиль | Отправить PM | Цитировать Цитата El Sanchez:
|
|
Отправлено: 12:35, 10-01-2012 | #588 |
Ветеран Сообщения: 1640
|
Профиль | Отправить PM | Цитировать Извините за тюпые вопросы.
Какими командами можно: а) прервать итеракцию цикла и перейти в следующую итеракцию? б) прервать цикл полностью и продолжить дальше по телу функции? в) прервать выполнение функции в заданном месте? |
------- Отправлено: 12:41, 10-01-2012 | #589 |
Ветеран Сообщения: 1073
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 12:54, 10-01-2012 | #590 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Test | ferget | Тест-форум | 0 | 24-08-2011 01:25 | |
test | ! ! Aaa ! ! | Тест-форум | 0 | 23-04-2011 11:29 | |
test | Santa aka Snt | Тест-форум | 0 | 16-04-2011 22:35 | |
test | xolod. | Программное обеспечение Linux и FreeBSD | 0 | 19-04-2009 21:03 | |
Test memory | KEugeNik | Хочу все знать | 11 | 23-11-2003 23:11 |
|