|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8] |
|
Скрипты Inno Setup. Помощь и советы [часть 8]
|
Ветеран Сообщения: 1265 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы (Archive Pack 1):
Скрипты Inno Setup. Помощь и советы [часть 6] Скрипты Inno Setup. Помощь и советы [часть 7] |
|
Отправлено: 08:52, 02-02-2015 |
Ветеран Сообщения: 856
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 11:24, 16-10-2016 | #1691 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать habib2302,
справка
[Setup]: AlwaysRestart
Возможные значения: yes или no Значение по умолчанию: no Описание: При значении yes инсталлятор будет всегда предлагать перезагрузить компьютер после успешной установки, даже если этого не нужно (в секции [Files] могут быть параметры с флагом restartreplace). |
------- Отправлено: 12:41, 18-10-2016 | #1692 |
Ветеран Сообщения: 856
|
Профиль | Отправить PM | Цитировать nik1967, у меня последняя страница отключена
|
------- Отправлено: 15:26, 18-10-2016 | #1693 |
![]() Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать habib2302, вот так пробуй
Скрытый текст
[Setup] AppName=App AppverName=App v1.0 DefaultDirName={pf}\App OutputDir=. DisableFinishedPage=yes [Code] Procedure Reboot(); var i: integer; begin Exec('shutdown.exe', '/r /t 0 /d u:4:2', '', SW_HIDE, ewNoWait, i); end; procedure CurStepChanged(CurStep: TSetupStep); begin if CurStep = ssDone then begin if MsgBox('Для завершения установки требуется перезагрузка системы.'+#13#10+'Перезагрузить сейчас?', mbInformation, MB_YESNO) = 6 then Reboot(); end; end; |
------- Отправлено: 17:00, 18-10-2016 | #1694 |
Ветеран Сообщения: 856
|
Профиль | Отправить PM | Цитировать Помогите решить еще одну проблему. не запускается екзешник, который посредством команды /(un)install /silent должен запустить или удалять службу
https://yadi.sk/d/IpYZ28CBx6ozB [Run] Filename: {app}\USBSRService.exe; Parameters: "/install /silent"; Flags: waituntilterminated [UninstallRun] Filename: "{app}\USBSRService.exe"; Parameters: "/uninstall /silent"; [Code] procedure CurStepChanged(CurStep: TSetupStep); var RC: integer; begin if CurStep = ssInstall then Exec(ExpandConstant('{app}\USBSRService.exe'), '/uninstall /silent', '', SW_HIDE, ewWaitUntilTerminated, RC); end; |
------- Отправлено: 20:59, 18-10-2016 | #1695 |
![]() Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 21:07, 18-10-2016 | #1696 |
Ветеран Сообщения: 856
|
Профиль | Отправить PM | Цитировать Dodakaedr, а с секций run?
|
------- Отправлено: 21:22, 18-10-2016 | #1697 |
![]() Ветеран Сообщения: 857
|
Профиль | Отправить PM | Цитировать habib2302, там все правильно
|
------- Отправлено: 21:31, 18-10-2016 | #1698 |
Ветеран Сообщения: 838
|
Профиль | Отправить PM | Цитировать Нужно добваить пару строк в {sys}\drivers\etc\hosts
Во-первых, хотелось бы добавить строки только при их отсутствии, то есть без повторения строк. Во-вторых, хотелось бы учесть случай отсутствия \n в конце последней записи существующего файла. Однако, добавлять NEWLINE в пустой файл вначале, тоже не хотелось бы, для этого я думаю можно использовать проверку размера файла == 0 и тогда делать записи с первой строки. Желательно не выводить окна, если Non Admin mode, чтобы всё тихо было. Лучше бы установить права доступа на файл в любом режиме, но я думаю это лишнее, возможно даже совсем не нужно. |
------- Отправлено: 18:12, 19-10-2016 | #1699 |
Ветеран Сообщения: 1265
|
Профиль | Отправить PM | Цитировать Цитата semiono:
Скрытый текст
////////////////////////////////////////////////// function StripWhitespace(const S: string): string; var C: Char; i: Integer; begin for i := 1 to Length(S) do begin C := S[i]; if (C = ' ') or ((C >= #$0009) and (C <= #$000D)) or (C = #$00A0) or (C = #$0085) then Continue; Result := Result + C; end; end; ///////////////////////////////////////////////////////// function AddEntryToHosts(const Ip, Url: string): Boolean; var i: Integer; begin Result := False; with TStringList.Create do try LoadFromFile(ExpandConstant('{sys}\drivers\etc\hosts')); for i := 0 to Count - 1 do if CompareText(StripWhitespace(Strings[i]), Trim(Ip) + Trim(Url)) = 0 then Exit; Add(Ip + #9 + Url); SaveToFile(ExpandConstant('{sys}\drivers\etc\hosts')); Result := True; finally Free; end; end; /////////////////////////// procedure InitializeWizard; begin if AddEntryToHosts('127.0.0.1', 'google.ru') then MsgBox('Done', mbInformation, MB_OK); end; Цитата semiono:
|
||
Отправлено: 11:34, 20-10-2016 | #1700 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты Inno Setup. Помощь и советы [часть 7] | El Sanchez | Автоматическая установка приложений | 2499 | 02-02-2015 08:59 | |
Скрипты Inno Setup. Помощь и советы [часть 6] | El Sanchez | Автоматическая установка приложений | 2494 | 10-03-2014 11:51 | |
Скрипты Inno Setup. Помощь и советы [часть 5] | El Sanchez | Автоматическая установка приложений | 1999 | 28-03-2013 19:09 | |
Скрипты Inno Setup. Помощь и советы [часть 4] | El Sanchez | Автоматическая установка приложений | 2099 | 22-05-2012 23:16 | |
Скрипты Inno Setup. Помощь и советы [часть 3] | Serega | Автоматическая установка приложений | 3755 | 26-10-2011 17:58 |
|