Ru-Board.club
← Вернуться в раздел «Программы»

» Inno Setup (создание инсталяционных пакетов)

Автор: AngelDead
Дата сообщения: 20.03.2009 18:03
Люди помогите пожалуйста!
Как изменить иконку деинсталлятора unins000?
Автор: clemenco
Дата сообщения: 20.03.2009 18:20
DeKaNszn
Спасибо! Помогло. Вопрос с повестки снимается.
Автор: DeKaNszn
Дата сообщения: 20.03.2009 18:22
nOobCrafter

смотри сам
Автор: msatmb
Дата сообщения: 20.03.2009 19:04
AngelDead
В шапке есть ответ на твой вопрос, да и пару страниц назад тоже такое было. Воспользуйся поиском
Автор: nOobCrafter
Дата сообщения: 20.03.2009 19:14
Rover 2000
скачайте Inno Setup Scripting 5.1 из шапки, там найдете ответ
Автор: Rover 2000
Дата сообщения: 20.03.2009 19:14
Мне на вопрос ответит кто нибудь?
Автор: skeptik_vdm
Дата сообщения: 20.03.2009 20:55
Rover 2000
Делается это так
[Files]
Source:"путь к архиву\архив.exe";DestDir:"{app}";Flags:ignoreversion deleteafterinstall
[Run]
Filename:{app}\архив.exe;WorkingDir:{app};Parameters:указываешь парметры какие тебе надо;StatusMsg:"Идет распаковка архива...";
И прежде чем задавать такие вопросы прогляди всю шапку там все есть!!!А чем лучше сжимать тебе по моему ни кто не скажет потому что каждый архиватор жмет по разному и тут еще зависит от типа файлов и от много всего!!!


Автор: Rover 2000
Дата сообщения: 20.03.2009 21:24
skeptik_vdm
Спасибо огромное,я просто в шапке не заметил
Автор: msatmb
Дата сообщения: 20.03.2009 21:30
Собственно есть [more=такой][Code]
var
InstallLocation: String;
errCode: Integer;

procedure NextButtonOnClick(Sender: TObject);
begin
ShellExec('open', ExpandConstant('{reg:HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1,InstallLocation|}') + '\{#MyAppExeName}', '', '', sw_Show, ewWaitUntilTerminated, errCode);
end;

procedure CancelButtonClick(CurPage: Integer; var Cancel, Confirm: Boolean);
begin
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1','InstallLocation', InstallLocation) then
begin
Cancel:=False;
Confirm:=False;
if MsgBox('Вы точно уверены, что не хотите запускать эту чудо-игру?', mbError, MB_YESNO) = idYes
then
Cancel:=true;
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1','InstallLocation', InstallLocation) and (CurPageId=wpWelcome) then
begin
WizardForm.WelcomeLabel1.Caption:='Хотите сыграть в Titan Quest прямо сейчас?';
WizardForm.WelcomeLabel2.Caption:='Когда Вы будете готовы начать игру, пожалуйста, нажмите кнопку «Играть». Если же вы хотите выйти из приложения - нажмите кнопку «Выйти».'#13#13+'Настоятельная просьба от разработчиков Программного Обеспечения: пожалуйста, закройте все приложения перед запуском игры.'#13#13+'Желаем Вам кучу приятных эмоций от пользования данным продуктом!';
WizardForm.NextButton.Caption:='Играть';
WizardForm.CancelButton.Caption:='Выйти';
WizardForm.NextButton.OnClick:= @NextButtonOnClick;
end;
end;
[/more] код. Подскажите как сделать чтобы после нажатия на кнопку "Играть" инсталлятор закрывался. А то сейчас получается, нажимаем "Играть" - запускается игра, а инсталлятор не закрывается.
Автор: skeptik_vdm
Дата сообщения: 20.03.2009 21:50
msatmb
Если попробовать поставить на кнопку запуска вот это Confirm:=False;???
Автор: DOG94
Дата сообщения: 20.03.2009 23:41
Вот я создал игру, её вес 1.8 гб, в настройках указал иконку на установку, но почему то её нету! Почему?
Автор: htuos
Дата сообщения: 20.03.2009 23:57
msatmb
в ShellExec ewWaitUntilTerminated замени на ewNoWait
Автор: kombat 77
Дата сообщения: 21.03.2009 00:19
DOG94

Цитата:
Вот я создал игру

Один?
Автор: msatmb
Дата сообщения: 21.03.2009 00:47
skeptik_vdm
куда именно? там вроде стоит уже такое
htuos
не работает
Автор: kombat 77
Дата сообщения: 21.03.2009 01:33
msatmb
я бы [more=так]


[Setup]
AppName=My Program
AppVerName=My Program version 1.0
DefaultDirName={pf}\My Program
DisableProgramGroupPage=True

#define MyAppExeName "MyProg.exe";
#define MyAppName "My Program";

[Files]
Source: compiler:Examples\MyProg.exe; DestDir: {app}; Flags: ignoreversion;

[Code]
var
InstallLocation: String;

function NextButtonClick(CurPageID: Integer): Boolean;
var
ErrorCode: Integer;
begin
Result := True;
if CurPageID = wpWelcome then
begin
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1','InstallLocation', InstallLocation) then
begin
if InstallLocation <> '' then
Exec(ExpandConstant(InstallLocation + '\{#MyAppExeName}'), '', '', SW_SHOW, ewNoWait, ErrorCode);
WizardForm.CancelButton.OnClick(WizardForm.CancelButton);
Result := False;
end;
end;
end;

procedure CancelButtonClick(CurPage: Integer; var Cancel, Confirm: Boolean);
begin
if CurPage = wpWelcome then
begin
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1','InstallLocation', InstallLocation) then
begin
if InstallLocation <> '' then
Confirm := False;
end;
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
if RegQueryStringValue(HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppName}_is1','InstallLocation', InstallLocation) and (CurPageId=wpWelcome) then
begin
WizardForm.WelcomeLabel1.Caption := 'Хотите сыграть в Titan Quest прямо сейчас?';
WizardForm.WelcomeLabel2.Caption := 'Когда Вы будете готовы начать игру, пожалуйста, нажмите кнопку «Играть». Если же вы хотите выйти из приложения - нажмите кнопку «Выйти».'#13#13+'Настоятельная просьба от разработчиков Программного Обеспечения: пожалуйста, закройте все приложения перед запуском игры.'#13#13+'Желаем Вам кучу приятных эмоций от пользования данным продуктом!';
WizardForm.NextButton.Caption := 'Играть';
WizardForm.CancelButton.Caption := 'Выйти';
end;
end;


[/more] делал
Автор: Forslay
Дата сообщения: 21.03.2009 06:49
DOG94

Файлы таких размеров имеют проблемы с отображением иконок в Windows. Разбей инсталляционный пакет так, что бы, исполнительный файл весил менее 300 метров.
Автор: msatmb
Дата сообщения: 21.03.2009 09:46
kombat 77
Спасибо, все прекрасно работает!
Автор: Kutsenko
Дата сообщения: 21.03.2009 11:47
Заметил одну классную штуку в инсталяторе от 1С сделанного INNO Setup'ом, и себе тоже такое захотелось).

Кто знает как это осуществить?
Автор: AngelDead
Дата сообщения: 21.03.2009 11:55
Сделал сетап с помощью GameScript Generator, но у меня почему деинстолятор глючит. Вот удалил игру и комп показывает что все программы удалились, помогает только перезагрузка. В чем может быть дело?
P.S напиши кто нибудб код деинстолятора который создается в GameScript Generator, а то его найти не могу.
Автор: Rover 2000
Дата сообщения: 21.03.2009 12:21
skeptik_vdm
А ты код не знаешь ещё чтоб архив распаковывался в определённое место?
Автор: WinstAn70
Дата сообщения: 21.03.2009 15:33
Rover 2000
Ты сам можешь указать!
Автор: Yoldosh
Дата сообщения: 21.03.2009 18:40
Кто нибудь знает скрипт штобы Инно просил втарой диск
Автор: KeyGen
Дата сообщения: 21.03.2009 19:10
Обновилась расширенная версия Inno Setup Compiler (build 090319)

Скачать и посмотреть что нового в этой версии: http://restools.hanzify.org/article.asp?id=47 ссылка в самом низу.

Добавлено:
Yoldosh
В справке есть команда для этого. Посмотри.
Автор: Rover 2000
Дата сообщения: 21.03.2009 20:20
WinstAn70
У меня автоматом распаковывается,не в ту папку,что надо в инно прописать чтоб в определённую папку разархивировалось???
Автор: msatmb
Дата сообщения: 21.03.2009 22:10
Rover 2000
Возможно нужно добавить параметры для разархивирования и указать в них в какую папку необходимо разархивировать архив.Поподробнее расскажи что у тебя и куда распаковывается и каким архивом пожато
Автор: Rover 2000
Дата сообщения: 21.03.2009 22:32
msatmb
Пожато 7-z,сжата папка со звуками игры,должна она распаковываться в папку data,а распаковывается в главную папку игры
Автор: skeptik_vdm
Дата сообщения: 21.03.2009 22:37
Rover 2000
Попробуй написать вот так WorkingDir:{app}\data в секции [Run]!!!
Автор: kombat 77
Дата сообщения: 22.03.2009 01:08
Kutsenko

Цитата:
Кто знает как это осуществить?

Ну в принципе не так сложно, думаю как-то [more=так]

[Setup]
AppName=My Program
AppVerName=My Program v 1.0
DefaultDirName={pf}\My Program
OutputDir=.

[Code]

var
UsagePage: TInputOptionWizardPage;

procedure InitializeWizard();
begin
UsagePage := CreateInputOptionPage(wpWelcome, 'Режим установки',
'Пожалуйста, выберите в каком режиме будет устанавливаться программа', '', True, False);
UsagePage.Add('Экспресс Режим'
+ #13 + 'Установка игры с параметрами по умолчанию.');
UsagePage.Add(#13 + 'Расширенный Режим'
+ #13 + 'Позволяет изменять пути установки, а также какое'
+ #13 + 'дополнительное ПО и компоненты будут установлены.'
+ #13 + 'Рекомендуем к использованию только опытным пользователям.');
UsagePage.SelectedValueIndex := 0;
end;

function ShouldSkipPage(PageID: Integer): Boolean;
begin
if UsagePage.SelectedValueIndex = 0 then
if PageID = wpSelectDir then
Result := True;
if PageID = wpSelectProgramGroup then
Result := True;
end;

[/more]
Автор: msatmb
Дата сообщения: 22.03.2009 03:07
Rover 2000, попробуй как skeptik_vdm сказал, а можно еще в параметрах распаковки указать Parameters: "-x archive.7z -y -o{app}\data"; WorkingDir: "{app}";
Тоже должно получиться.
Автор: Kutsenko
Дата сообщения: 22.03.2009 11:47
kombat 77
Спасибо огромное, какрас то что нужно.

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: в очередной раз босудим антивиры?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.