|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка приложений » Скрипты Inno Setup. Помощь и советы [часть 9] |
|
|
Скрипты Inno Setup. Помощь и советы [часть 9]
|
|
Ветеран Сообщения: 1274 |
Внимание! Данная тема предназначена только для обсуждения написания скриптов!
Остальные вопросы, а также последние версии компилятора в теме 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 |
|
Пользователь Сообщения: 98
|
Профиль | Отправить PM | Цитировать Цитата ErikPshat:
|
|
|
Отправлено: 14:34, 24-10-2018 | #131 |
|
Новый участник Сообщения: 7
|
Профиль | Отправить PM | Цитировать Цитата El Sanchez:
![]() |
|
|
Отправлено: 14:36, 24-10-2018 | #132 |
|
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать Парни скажите как сделать средствами Inno Setup
короче при распаковки инстал. запускается другой с папки tmp, но он запаролен скажем 12345 так вот как мне сделать что бы он автоматом запускался без вода в ручную пароля |
|
Отправлено: 20:37, 28-10-2018 | #133 |
|
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата pollipen:
Цитата:
|
||
|
Отправлено: 21:09, 28-10-2018 | #134 |
|
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать что то ни как ни пойму
wwwww.exe он запаролен Скрытый текст
#define MyAppName "My Program"
#define MyAppVersion "1.5" #define MyAppPublisher "My Company, Inc." #define MyAppURL "http://www.example.com/" #define MyAppExeName "MyProg.exe" [Setup] AppId={{4F1F4C94-0955-42AB-9AEF-23D33908F46C} AppName={#MyAppName} AppVersion={#MyAppVersion} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}\{#MyAppName} DefaultGroupName={#MyAppName} OutputBaseFilename=setup Compression=lzma SolidCompression=yes [Languages] Name: "english"; MessagesFile: "compiler:Default.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [Files] Source: "C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "C:\Users\ww\Desktop\wwwww.exe"; DestDir: "{tmp}"; Flags: ignoreversion [Icons] Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon [Run] Filename: "{tmp}\wwwww.exe"; Parameters: "/PASSWORD=12345" |
|
Отправлено: 11:40, 29-10-2018 | #135 |
|
Пользователь Сообщения: 54
|
Профиль | Отправить PM | Цитировать pollipen, чёт мне показалось, что речь шла про секцию [Setup], а не про [RUN].
Хотя и в секции [ Code ] любые параметры запуска приложения имеют возможность выставить параметры запуска. |
|
Отправлено: 17:41, 29-10-2018 | #136 |
|
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать ErikPshat
хорошо тогда как через [ Code ] |
|
Отправлено: 11:44, 30-10-2018 | #137 |
|
Пользователь Сообщения: 54
|
Профиль | Отправить PM | Цитировать pollipen, ну как мы запускаем любые экзешники через "ShellExec" или "Exec". Там на втором месте указываются параметры к экзешнику.
Вот пример извлечения запароленных архивов 7-Zip: ; Дефайним переменные
#define Name "My_Program_Name"
#define UserName "by pollipen"
#define Version "1.0.0.0"
#define Publisher "pollipen © OsZone Team"
#define ExeName "My_Program_Name"
;
; Точка с запятой - это комментарий
;
; Выставляем стандартные параметры программы в секции Setup:
[Setup]
;VersionInfoCompany=Название компании
VersionInfoCompany={#Publisher}
;VersionInfoCopyright=Авторские права
VersionInfoCopyright=(c) 2006-2018 {#Publisher}
;VersionInfoDescription=Описание файла
VersionInfoDescription={#Name} {#UserName}
;VersionInfoProductName=Название продукта
VersionInfoProductName={#Name}
;VersionInfoProductVersion=1.0.0.0 (Версия продукта цифровая)
VersionInfoProductVersion={#Version}
;VersionInfoProductTextVersion=Производитель
VersionInfoProductTextVersion={#Publisher}
;VersionInfoTextVersion=Версия файла текстовая
VersionInfoTextVersion={#Version} Final
;VersionInfoVersion=1.0.0.0 (Версия файла цифровая)
VersionInfoVersion={#Version}
;
; Таскаем (пакуем) с собой экзешник и INI (для примера) в программе:
[Files]
Source: Include\7z.exe; DestDir: {tmp}; Flags: dontcopy
Source: Include\7z.dll; DestDir: {tmp}; Flags: dontcopy
Source: Include\RUS\Config_en.ini; DestDir: {tmp}; Flags: dontcopy
Source: Include\ENG\Config_en.ini; DestDir: {tmp}; Flags: dontcopy
;
; Выставляем поддерживаемые языки в программе:
[Languages]
Name: en; MessagesFile: compiler:Default.isl
Name: ru; MessagesFile: compiler:Languages\Russian.isl
;
; Заменяем стандартные диалоги на свои любимые:
[Messages]
SetupAppTitle={#Name}
SelectLanguageTitle={#Name}
ru.SelectLanguageLabel=Выберите язык, который будет использован в программе распаковки:
en.SelectLanguageLabel=Select the language to use in the unpacking program:
;
; Добавляем свои кастомные диалоги:
[CustomMessages]
ru.SelectArch=Выберите файл архива для распаковки
ru.SelectedArch=Выбран архивный файл :
en.SelectArch=Select archive file to unpack
en.SelectedArch=Selected archive file :
;
; //////////////////////////////////////
; А тут пошла секция кода Code (пробелы у Code убираем, т.к. форум их воспринимает как ББ-код):
[ Code ]
// Допустим, берём любой текст из INI-файла, в данном случае название экзешника 7z.exe. Пишем для этого функцию:
// В INI секция [Support], а под ней ключ UNPACK_ARCH=7z.exe.
// Захватываем через переменную тот языковой INI, который язык юзер выбрал при запуске программы:
function UnpackArch(Default:String):String;
Begin
Result:=GetIniString('Support', 'UNPACK_ARCH', '', ExpandConstant('{tmp}\Config_{language}.ini'));
end;
{ Команда кнопки "Распаковать архив". Код самой кнопки приводить не буду, у вас своя кнопка }
procedure UnpackArchButtonClick(Sender: TObject);
// Объявляем новую переменную названия выбранного архива через проводник Windows:
var
ArchName: String;
begin
// Извлекаем из инсталлятора в {tmp} файлы архиватора:
ExtractTemporaryFile('7z.exe');
ExtractTemporaryFile('7z.dll');
// Присваиваем в объявленную выше переменную имя выбранного архива:
ArchName := '';
// Открываем архив в проводнике Windows:
if GetOpenFileName(ExpandConstant('{cm:SelectArch}'),ArchName,ExpandConstant('{src}'),ExpandConstant('{cm:ArchFiles}')+' (001,ZIP,RAR,7z)|*.001;*.zip;*.rar;*.7z|'+ExpandConstant('{cm:TOMFile}')+' (*.001)|*.001|'+ExpandConstant('{cm:ZIPFile}')+' (*.zip)|*.zip|'+ExpandConstant('{cm:RARFile}')+' (*.rar)|*.rar|'+ExpandConstant('{cm:RARMFile}')+' (*.part1.rar)|*.part1.rar|'+ExpandConstant('{cm:SevenFile}')+' (*.7z)|*.7z|'+ExpandConstant('{cm:AllFiles}')+'|*.*','001') then
// Затем отображаем в окошке имя выбранного архива и спрашиваем подтверждение или отказ на извлечение:
if MsgBox(ExpandConstant('{cm:SelectedArch}')+#10#10+ArchName+#10#10+ExpandConstant('{cm:ExtractArch}'), mbInformation, MB_YESNO) = IDYES then
// В случае согласия, травим архив на экзешник 7z.exe, а на втором месте указываются параметры, про которые вы спрашивали, один из параметров (толькодлясвоих) - это пароль:
if not ShellExec('open',ExpandConstant('{tmp}\{code:UnpackArch}'),'x -y -oExtractedArchive -pтолькодлясвоих '+'"'+ArchName+'"',ExpandConstant('{src}'),SW_SHOWNORMAL,ewWaitUntilTerminated,ResultCode) then
MsgBox(ExpandConstant('{code:NotFileOnDiskMsg}'),mbCriticalError,MB_OK);
begin ShellExec('open',ExpandConstant('{src}\ExtractedArchive'),'','',SW_SHOWNORMAL,ewWaitUntilIdle,ResultCode) end;
end;
|
|
Отправлено: 13:52, 30-10-2018 | #138 |
|
Новый участник Сообщения: 4
|
Профиль | Отправить PM | Цитировать как установить punkbuster в тихую? без принятия соглашения и тд?
параметры я нашел в логах... --install --install-dlls="D:\Games\Battlefield 2" --i-accept-the-pb-eula --no-prompts --no-display пример- Exec(ExpandConstant ('{src}\punkbuster\redist\pbsvc.exe'), '--install --install-dlls="{src}" --i-accept-the-pb-eula --no-prompts --no-display', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
в логе после этого... |
|
Отправлено: 08:57, 05-11-2018 | #139 |
|
Ветеран Сообщения: 1274
|
Профиль | Отправить PM | Цитировать Цитата Maratina:
Скрытый текст
[Run]
Filename: {src}\punkbuster\redist\pbsvc.exe; Parameters: "--install --install-dlls=""{src}"" --i-accept-the-pb-eula --no-prompts --no-display"; Flags: nowait
; или в [Code]
Exec(ExpandConstant('{src}\punkbuster\redist\pbsvc.exe'), '--install --install-dlls=' + ExpandConstant('"{src}"') + ' --i-accept-the-pb-eula --no-prompts --no-display', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
|
|
|
Отправлено: 11:34, 05-11-2018 | #140 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Скрипты 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 | |
|