|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 9] |
|
Скрипты Inno Setup. Помощь и советы [часть 9]
|
Ветеран Сообщения: 1269 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов!
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы [часть 6] | Скрипты Inno Setup. Помощь и советы [часть 6].7z Скрипты Inno Setup. Помощь и советы [часть 7] | Скрипты Inno Setup. Помощь и советы [часть 7].7z Скрипты Inno Setup. Помощь и советы [часть 8] | Скрипты Inno Setup. Помощь и советы [часть 8].7z |
|
Отправлено: 16:09, 04-04-2018 |
![]() Ветеран Сообщения: 858
|
Профиль | Отправить PM | Цитировать Цитата Beavimo:
Цитата Beavimo:
[Setup] AppName=My Application AppVersion=1.5 DefaultDirName={pf}\My Application [code] procedure InitializeWizard(); var s: string; begin s := 'Path=C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE;'; |
||
------- Последний раз редактировалось Dodakaedr, 18-02-2020 в 07:18. Отправлено: 22:49, 17-02-2020 | #561 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 978
|
Профиль | Сайт | Отправить PM | Цитировать Beavimo, самое простое, использовать в такой ситуации функцию
Она отсекает с хвоста все до первого слеша.
ExtractFilePath(ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE,Path}')); Если нужно без косой черты, то ExtractFileDir - она возвращает тоже самое, но без слеша |
------- Отправлено: 00:03, 18-02-2020 | #562 |
Пользователь Сообщения: 62
|
Профиль | Отправить PM | Цитировать наконец то....
![]() ![]() CODE
[Setup] AppName=TEST1 AppVerName=TEST2 OutputDir=userdocs:..\desktop CreateAppDir=no Uninstallable=no [*Code] function InitializeSetup(): Boolean; var FileName: String; begin FileName:=ExtractFilePath(ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE,Path}')); if not FileExists((FileName)+('Internet Explorer\iexplore.exe')) then Result:=True else MsgBox((FileName)+'Internet Explorer' #13''#13 'Папка Установки При Обновлении !', mbInformation, MB_OK); end; [Files] //Source: "userdocs:..\desktop\TEST.exe"; DestDir: "{app}"; Flags: ignoreversion Теперь другов вопрос, как его этот путь "(FileName)+'Internet Explorer'", сохранить в например в дириктиву #define, или например в {app} неважно куда и как важно чтобы в (DestDir) каталог установки брался автоматом, так как пишеться апдейт а не полноценный софт. |
Последний раз редактировалось Beavimo, 18-02-2020 в 10:19. Отправлено: 04:43, 18-02-2020 | #563 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Отправлено: 12:14, 18-02-2020 | #564 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать Привет. что я делаю не так? Помогите новичку. Винда 10-64
Root: HKLM; SubKey: SOFTWARE\Boris FX, Inc.\Boris Graffiti 6.6; ValueType: string; ValueName: DefaultLibraryPath; ValueData: {pf64}\Boris FX, Inc\Keyframe Libraries 6; Flags: uninsdeletevalue uninsdeletekeyifempty HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\WOW6432Node Спасибо. |
Отправлено: 16:27, 20-02-2020 | #565 |
Ветеран Сообщения: 861
|
Профиль | Отправить PM | Цитировать VLADEV, Замените HKLM на HKLM64
|
------- Отправлено: 16:52, 20-02-2020 | #566 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать habib2302,
Спасибо я конечно это сделал. я использовал конвертер реестра Converter.exe и он не проставляет мне HKLM64 Вот я и не понял почему . |
Отправлено: 22:38, 20-02-2020 | #567 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата VLADEV:
Там, где предполагается несовпадение разрядности программы и системы, пути в реестре и на диске надо самому проверять. |
|
Отправлено: 23:22, 20-02-2020 | #568 |
SHVtYW4= Сообщения: 3451
|
Профиль | Отправить PM | Цитировать Цитата VLADEV:
1. Справка (Пожалуй это самое важное правило.). 2. Поиск (Это самое важное правило после первого пункта). Далее: Совсем недавно было: Сообщение #487. Далее: Цитата VLADEV:
Читайте сообщение #530 о Inno Script Studio. Работа с Inno Script Studio:
Вам нужно импортировать данные реестра.
Экспортируете необходимый подраздел реестра из RegEdit сохранив в файл *.reg. Открываете Inno Script Studio, или скрипт в нём. Переводите фокус на Registry и щёлкаете по нему левой кнопкой мыши. Вы в секции Registry: ![]() Далее щёлкаете левой кнопкой мыши по подготовленному файлу *.reg и не отпуская кнопки перетаскиваете в область Registry: ![]() Замечательно, данные импортировались: ![]() Вам нужно изменить список строк. Делаете как я (Делаю везде где только вздумается, не только в Inno): Выделяете необходимые данные для копирования: ![]() Нажимаете комбинацию клавиш CTRL+C чтоб скопировать выделенное. Переводите фокус к началу первой строки: ![]() Нажимаете комбинацию клавиш CTRL+H чтоб начать работу с заменой текста. В первом поле вставляете (CTRL+V) скопированный текст, который будет заменён: ![]() Во втором вводите данные для замены: ![]() Щёлкаете клавишу Replace All чтоб заменить все заданные условия: ![]() затем подтверждаете щёлкнув клавишу All: ![]() Как видите необходимые данные были заменены: ![]() Эти данные в 64-разрядной ОС будут внесены в WOW6432Node. Для x64 аналогично. Выделяете необходимые данные для копирования: ![]() Нажимаете комбинацию клавиш CTRL+C чтоб скопировать выделенное. Переводите фокус не к началу как ранее, а куда-нибудь в коментарии: ![]() Нажимаете комбинацию клавиш CTRL+H чтоб начать работу с заменой текста. В первом поле вставляете (CTRL+V) скопированный текст, который будет заменён: ![]() Во втором вводите данные для замены: ![]() Щёлкаете клавишу Replace All чтоб заменить все заданные условия: ![]() затем подтверждаете щёлкнув клавишу All: ![]() Как видите и в этом случае необходимые данные были заменены: ![]() Всё, теперь вы умеете импортировать *.reg и заменять некорректные данные на необходимые! Хочу заметить: Всё в одной программе. |
||
------- Отправлено: 02:41, 21-02-2020 | #569 |
Новый участник Сообщения: 14
|
Профиль | Отправить PM | Цитировать Nordek, Низкий поклон. Голова пока кипит ))) Взял на вооружение. Никаких конвертеров теперь
|
Отправлено: 22:07, 21-02-2020 | #570 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты 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 |
|