Показать полную графическую версию : Скрипты Inno Setup. Помощь и советы [часть 6]
Подскажите пожалуйста. Как добавить дополнительные шаги в установщике ?
insombia, Всё спс ребят
И ещё что нужно прописать чтобы сделать слайд-картинок во время установки работаю над другим скриптом
Доброго времени суток. Поставил себе задачу написать инсталятор в программе Inno Setup. Наслышан об этой программе и её возможностям. Сидел сутки листал мануалы, перечитывал некоторые темы но всё же не нашел много ответов на свою задумку.
Я тут составил небольшой план по инсталятора (немного глупо но я теперь буду точно знать чего я хочу).
1. Приветствие с картинкой и 2 кликобательнымы кнопками
2. Окно выбора Языка (Eng, Rus)
3. Окно с описанием
4. окно с соглашением установки
5. Проверка наличия Dokan библиотеки (если нет то установить и перезагрузить комп)
6. АВТОЗАПУСК - Продолжение установки с момента её завершения
7. Выбор установки + дополнительная настройка
8. Предложить установить некоторые программы
9. Указать путь к конкретной папке (только тогда появляется кнопка Установить)
10. Завершение установки с кнопкой запустить приложение + описание над ним
Вот скажите. Это же все реально реализовать? Если да подскажите кто что может и знает! Смотрю сюда очень часто отвечу практически сразу! Заранее благодарю!
insombia
10-06-2013, 07:40
APTEM2 http://narod.ru/disk/22510124000/isSlideShow%20v1.02.rar.html
3 пример это картинки в самом окне инстала
byUnit что именно нужно?
insombia
10-06-2013, 16:36
byUnit то что ты описал,это тоже самое что я бы тебе задал вопрос на китайском!сформулируй правильно вопрос,шаги какие-софт или что?
insombia
10-06-2013, 16:56
byUnit
1. Приветствие с картинкой
var
WelcomeLabel1, WelcomeLabel2, FinishedLabel, FinishedHeadingLabel: TLabel;
procedure InitializeWizard();
begin
ExtractTemporaryFile('img1.bmp');
WizardForm.WizardBitmapImage.Width:= ScaleX(497);
WizardForm.WizardBitmapImage2.Width:= ScaleX(497);
WizardForm.WizardBitmapImage2.Bitmap.LoadFromFile(ExpandConstant('{tmp}\img1.bmp'));
WizardForm.WelcomeLabel1.Hide;
WizardForm.WelcomeLabel2.Hide;
end;
2. Окно выбора Языка (Eng, Rus)
[Languages]
Name: Russian; MessagesFile: compiler:Languages\Russian.isl;
Name: english; MessagesFile: compiler:Languages\english.isl;
6. АВТОЗАПУСК - Продолжение установки с момента её завершения
это вроде нельзя сделать
8. Предложить установить некоторые программы
[Components]
Name: g0; Description: Portal 2; Types: full custom; Flags: disablenouninstallwarning checkablealone fixed
Name: g0\c1; Description: Coop-Launcher; Types: full; Flags: dontinheritcheck
так же можно посмотреть пример в inno gamescript generator
insombia спасибо буду ковырять данные пункты
А вообще мне нужен инсталятор с моими вложенными файлами
habib2302
11-06-2013, 14:57
как добавить чекбокс для удаления сохранений/настроек игры?
habib2302, msgBox после деинсталяции:
procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);
begin
case CurUninstallStep of
usPostUninstall:
if DirExists(AddBackslash(ExpandConstant('{userdocs}')) + 'My Game\Save') then
begin
if MsgBoxEx(0, 'Удалить сохранения игры находящиеся по адресу:' + #13#13 + AddQuotes(AddBackslash(ExpandConstant('{userdocs}')) + 'My Game\Save'), 'Удаление сохранений', $00000004 or $00000020, 0, 0) = IDYES then
DelTree(AddBackslash(ExpandConstant('{userdocs}')) + 'My Game\Save', True, True, True);
end;
end;
end;
habib2302
11-06-2013, 16:56
помогите мне пожалуйста решить проблему
http://img89.imageshack.us/img89/1834/thumbulxlw.png (http://img266.imageshack.us/img266/4264/snagit00021106201315490.png)
insombia
11-06-2013, 17:24
habib2302 переводить пробавал?
APPID_BAD_PIGGIES = '{9524C306-CC16-44A0-82AA-996409D1A059}';
здесь что-то не так
habib2302
11-06-2013, 17:28
в смысле и что переводить пробавал?
я тоже думал,что проблемы в этом коде
если я не ошибаюсь что-то еще здесь не так
///////////////////////////////////Удаление других приложений при старте
function GetUninstallPath(const AppIds: array of String): array of String;
var
StringList: TStringList;
i, Len: Integer;
Buff: String;
begin
for i := 0 to GetArrayLength(AppIds)-1 do
begin
Buff := RemoveQuotes(ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + AppIds[i] + '_is1,UninstallString|}'));
if Buff <> '' then
begin
Len := GetArrayLength(Result);
SetArrayLength(Result, Len+1);
Result[Len] := Buff;
end;
end;
end;
Всем доброго вечера , хочу задать вопрос ! Возможно ли сделать так чтобы во время установки была кнопка "Детали" где после нажатия отображались детали установил как в nsis .
insombia
11-06-2013, 20:17
habib2302 что-то вроде не совпадает,та и зачем оно?
habib2302
11-06-2013, 20:20
insombia, для того,чтобы перед установкой удалялась официальная игра,а вот ее appid {9524C306-CC16-44A0-82AA-996409D1A059}
Возможно ли сделать так чтобы во время установки была кнопка "Детали" »
http://forum.oszone.net/post-1924556-93.html
Если подойдет Johny777 "Полезное сообщение" нажмете
El Sanchez
11-06-2013, 22:07
я тоже думал,что проблемы в этом коде
если я не ошибаюсь что-то еще здесь не так »
habib2302, вместо этой строки:
Buff := RemoveQuotes(ExpandConstant('{reg:HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + AppIds[i] + '_is1,UninstallString|}'));
напишите
RegQueryStringValue(HKLM, Format('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%s_is1', [AppIds[i]]), 'UninstallString', Buff);
Buff := RemoveQuotes(Buff);
Скриптовая константа reg не может раскрыть GUID, считая его константой из-за фигурных скобок. Тут либо экранировать открывающую фигурную скобку (об этом найдете и почитаете в справке сами), либо использовать RegQueryStringValue для чтения из реестра.
habib2302
11-06-2013, 22:30
El Sanchez, в справке я нашел Если требуется ввести "{", наберите ее два раза. (You do not need to double "}" characters.)
я так и делал и все равно
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC