![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 8] |
|
Скрипты Inno Setup. Помощь и советы [часть 8]
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов !
Остальные вопросы, а также последние версии компилятора в теме Inno Setup. Прочие вопросы. Показать/скрыть: Справка, руководство, примеры:
Показать/скрыть: Ссылки на примеры скриптов:
Показать/скрыть: Дополнительные программы для Inno Setup:
Предыдущие ветки обсуждения по ссылкам ниже и в прикреплённых архивах: Скрипты Inno Setup. Помощь и советы (Archive Pack 1):
Скрипты Inno Setup. Помощь и советы [часть 6] Скрипты Inno Setup. Помощь и советы [часть 7] |
|
Отправлено: 08:52, 02-02-2015 |
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Подскажите как поправить пример
[ code] const INSTALLSTATE_DEFAULT = 5; #ifdef UNICODE #define A "W" #else #define A "A" #endif function MsiQueryProductState(szProduct: String): Integer; external 'MsiQueryProductState{#A}@msi.dll stdcall'; function IsMsiProductInstall(ProductCode: String): Boolean; begin Result := MsiQueryProductState(ProductCode) = INSTALLSTATE_DEFAULT; end; //к примеру определяем установлен ли Microsoft Visual C++ 2010 x86 Redistributable, ProductCode которого {196BB40D-1578-3D01-B289-BEFC77A11A1E} procedure InitializeWizard(); begin if IsMsiProductInstall('{196BB40D-1578-3D01-B289-BEFC77A11A1E}') then MsgBox('vcredist 2010 installed for current user', mbInformation, MB_OK) else MsgBox('vcredist 2010 not installed', mbInformation, MB_OK); end; Сам пытался, но нечего путнего у меня не вышло |
Отправлено: 23:04, 24-10-2017 | #2211 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата xryst:
|
|
Отправлено: 23:35, 24-10-2017 | #2212 |
Новый участник Сообщения: 19
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 00:00, 25-10-2017 | #2213 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать xryst,
Скрытый текст
[Setup] AppName = MyApp AppVerName = MyApp DefaultDirname = {pf}\MyApp OutputDir=. [Languages] Name: rus; MessagesFile: compiler:Languages\Russian.isl [code] const INSTALLSTATE_DEFAULT = 5; #ifdef UNICODE #define A "W" #else #define A "A" #endif function MsiQueryProductState(szProduct: String): Integer; external 'MsiQueryProductState{#A}@msi.dll stdcall'; function IsMsiProductInstall(ProductCode: String): Boolean; begin Result:= MsiQueryProductState(ProductCode) = INSTALLSTATE_DEFAULT; end; //к примеру определяем установлен ли Microsoft Visual C++ 2010 x86 Redistributable, ProductCode которого {196BB40D-1578-3D01-B289-BEFC77A11A1E} function InitializeSetup: Boolean; begin if IsMsiProductInstall('{196BB40D-1578-3D01-B289-BEFC77A11A1E}') then begin MsgBox('vcredist 2010 installed for current user', mbInformation, MB_OK); Result:= true; end else begin MsgBox('vcredist 2010 not installed', mbInformation, MB_OK); Result:= false; end; end; |
------- Отправлено: 09:34, 25-10-2017 | #2214 |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Здраствуйте, уважаемые знатоки!
Такая вот шняга. Скрипт Inno Setup подшаманить надо. Надо убрать инфу для удаления, а конкретно - два файла. unins000.dat и unins000.exe с целевой папки Может, посоветуете что? Вариант ручного удаления - не вариант. Надо чтобы их не оставалось после установки |
Отправлено: 10:03, 25-10-2017 | #2215 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Карась з Днiпра, зачем?
|
Отправлено: 10:06, 25-10-2017 | #2216 |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Также задача второстепенной важности, которая мне никак не поддается. Буду благодарен, если поможете.
Видел как то русскую локализацию к игре Lost Via Domus, от пиратов. Целевой файл там на 2 ГБ, архив какой нибудь. А сам инсталл - мегабайта полтора или сколько там. Не помню. Мелочь. Подобное супер-мега-дупер-сжатие мне надо реализовать и в своем скрипте, потому как файлов там гигабайт на 15. Помогите, пожалуйста... |
Отправлено: 10:09, 25-10-2017 | #2217 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать Карась з Днiпра,
Читаем справку!
[Setup]: Uninstallable Возможные значения: yes или no, или логические выражения Значение по умолчанию: yes Описание: Inno Setup определяет, создавать ли автоматический деинсталлятор. При значении yes или логического выражения True он создается. Иначе автоматическое удаление будет невозможно, так что пользователь должен будет вручную удалять программу. Установка значения директивы в True может быть полезной, если Вы хотите установить 'переносимую' программу. Например: [Setup] Uninstallable=not IsTaskSelected('portablemode') [Tasks] Name: portablemode; Описание: "Portable Mode" См. также: CreateUninstallRegKey [Setup]: CreateUninstallRegKey Возможные значения: yes или no, или логическое выражение Значение по умолчанию: yes Описание: При значении no или False (логические выражения) инсталлятор не будет создавать пункта программы в диалоге Установка и удаление программ. Это может быть полезно, если программа является обновлением для уже установленного приложения и запись в этом диалоге не нужна, но надо сохранить возможность удаления обновления (Uninstallable=no). В этом случае, UpdateUninstallLogAppName обычно устанавливается в no. |
------- Последний раз редактировалось nik1967, 25-10-2017 в 10:15. Отправлено: 10:10, 25-10-2017 | #2218 |
Новый участник Сообщения: 17
|
Профиль | Отправить PM | Цитировать Iska, для моего инсталла деинсталяция вообще не нужна. Да и лишние файлы в целевой папке тоже.
|
Отправлено: 10:10, 25-10-2017 | #2219 |
Старожил Сообщения: 440
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Карась з Днiпра:
|
|
------- Отправлено: 10:11, 25-10-2017 | #2220 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Скрипты 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 |
|