Войти

Показать полную графическую версию : [архив] Скрипты Inno Setup. Помощь и советы [часть 2]


Страниц : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [44] 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133

YURSHAT
17-01-2010, 14:13
A1EXXX, извини, отвечу за тебя :)

а вот это обязательно? »

Да, через эту строчку инсталл узнает куда установлена игра, и соответственно инсталлит в эту папку

gluyk
18-01-2010, 17:47
а можно ли сделать в инно сетапе вывод сайта?) если да, то как.
т.е. задача, что бы в одно окно выводился урл к примеру http://ya.ru

A1EXXX
18-01-2010, 18:05
gluyk, ты хочешь, чтобы сайт открывался в окне инсталла?? Не думаю, что к Инно можно прикрутить функции браузера...

gluyk
18-01-2010, 18:15
A1EXXX,
ага. именно.

gluyk
18-01-2010, 18:52
а есть возможность сделать сверку серийного номера вводимым пользователем с он-лайн?

gluyk
19-01-2010, 00:58
изучая манаул понял, что инсталлер может работать со моими dll. а значит, можно загнать Indy.Sockets а именно, IdHTTP в dll и прикрутить его к инсталлеру. у кого уже был такой или подобный опыт?

Sotonisto
20-01-2010, 05:40
Я вот в инно ламер, так что у меня есть вопрос.
Я создаю инсталл для Left 4 Dead 2, в папке есть файл (stryder.ini) и в нем только вот эти две строки
[Settings]
Name=Sotonisto
Так вот, мне бы хотелось что бы тот кто установил игру мог вписать свой ник (он должен быть там где мой).
То есть сделать так, что бы полсе установки игры появилось окно в котором пользователю предлагалось ввести свой ник (и он естественно изменился).
------
A1EXXX а не могли бы вы доработать мой инсталл RE5 (картинка для инсталла в двух диалогах поверх всего)?

A1EXXX
20-01-2010, 11:14
Sotonisto, на написание себе скрипта время выделить не могу, а кому-то и подавно...
Здесь (скрипт Prototype) (http://forum.ru-board.com/topic.cgi?forum=5&topic=30413&start=2220#10), реализованы остальные страницы. А по поводу записи данных в .ini вопрос уже звучал, используй поиск.

serega355
20-01-2010, 12:40
Пользователи, если кто-нибудь знает, подскажите пожалуйста, создал инсталлятор с помощью мастера, установил игру, а ярлыки с рабочего стола и с ПУСКА не запускают её. Вот инсталлятор:
; Скрипт создан при помощи мастера создания скриптов.
; СМ. ДОКУМЕНТАЦИЮ ДЛЯ ИЗУЧЕНИЯ ДЕТАЛЕЙ ОТНОСИТЕЛЬНО СОЗДАНИЯ ФАЙЛОВ СКРИПТА INNO SETUP!

[Setup]
AppName=Grand Theft Auto Racing Driver
AppVerName=Grand Theft Auto Racing Driver 1.5
AppPublisher=Rockstar Games
AppPublisherURL=http://rockstargames.ru/
AppSupportURL=http://rockstargames.ru/
AppUpdatesURL=http://rockstargames.ru/
DefaultDirName=C:\Program Files\Rockstar Games\Grand Theft Auto Racing Driver
DefaultGroupName=Grand Theft Auto Racing Driver
LicenseFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\License.txt
InfoBeforeFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\info.txt
InfoAfterFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\files.txt
OutputDir=D:\Игромания\Инсталлятор GTA Racing Driver
OutputBaseFilename=setup
SetupIconFile=D:\Игромания\Grand Theft Auto Racing Driver\data\Icons\app.ico
Password=1345O-9087H-0967K-3555R
Compression=lzma/ultra
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=1
DiskSliceSize=999999999
DiskClusterSize=4096
ReserveBytes=0

[Languages]
Name: "russian"; MessagesFile: "compiler:Default.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "D:\Игромания\Grand Theft Auto Racing Driver\gta_sa.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\Игромания\Grand Theft Auto Racing Driver\unins000.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\Игромания\Grand Theft Auto Racing Driver\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; ОТМЕТЬТЕ: Не используйте "Флажки: Проигнорировать версию" на любых общедоступных системных файлах

[Icons]
Name: "{group}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"
Name: "{group}\{cm:ProgramOnTheWeb,Grand Theft Auto Racing Driver}"; Filename: "http://rockstargames.ru/"
Name: "{group}\{cm:UninstallProgram,Grand Theft Auto Racing Driver}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; Tasks: quicklaunchicon

[Run]
Filename: "{app}\gta_sa.exe"; Description: "{cm:LaunchProgram,Grand Theft Auto Racing Driver}"; Flags: nowait postinstall skipifsilent

R.i.m.s.k.y.
20-01-2010, 14:12
Вопрос знатокам:
Можно ли в окне выбора компонентов сделать так, чтобы определенные компоненты отображались в зависимости от ОС, под которой запущен инсталлер? И в зависимости от того, есть ли определенный файл/файлы менялась название компоненты и действие при ее выборе »

Чтож, отвечаю сам себе - можно и просто.


...
function CheckOption(OptionNum: integer): Boolean;
begin
Result:= Page.Values[OptionNum];
end;
...
procedure InitializeWizard();
GetWindowsVersionEx (Version);
if (Version.Major = 6) and (Version.Minor = 1) then begin
if (FileExists (ExpandConstant('{sys}\mfds.dll'))) then mfds := 1; if (FileExists (ExpandConstant('{sys}\mfds.dll.bak'))) then mfds := -1; if not (FileExists (ExpandConstant('{sys}\mfds.dll'))) and not (FileExists (ExpandConstant('{sys}\mfds.dll.bak')))then mfds := 0;
...
Page := CreateInputOptionPage(wpSelectTasks,'Встроенные кодеки Windows 7', 'Включение/отключение встроенных кодеков Windows 7 должно запускаться от имени пользователя, имеющего права Администратора!!!','Отключение кодеков осуществляется добавлением расширения .bak к файлам. Сами файлы остаются на своем месте - в папке ' + ExpandConstant('{sys}'),False, False);
{0} if mfds = 1 then Page.Add('ОТКЛЮЧИТЬ Windows Media Foundation'); if mfds = -1 then Page.Add('ВКЛЮЧИТЬ Windows Media Foundation'); if mfds = 0 then Page.Add('В папке ' + ExpandConstant('{sys}') + ' не найден файл mfds.dll или mfds.dll.bak');
...
if (CheckOption(0) and (mfds = 1)) then begin
...
if (CheckOption(0) and (mfds = -1)) then begin
...

Надеюсь понятно и кому-то поможет.

Drongo
20-01-2010, 14:41
serega355, У вас не отображается путь к Рабочей папке в свойствах ярлыка.

Зачем такая жёсткая привязка? :)
DefaultDirName=C:\Program Files\Rockstar Games\Grand Theft Auto Racing Driver

Тему перенесу в соответствующий раздел, вам помогу.

R.i.m.s.k.y.
20-01-2010, 15:50
Еще косметический вопрос: как увеличить окошко выбора компонентов и само белое поле с компонентами? А то одна строчка не влезает и из-за нее приходится вниз проматывать.

Авансом спасибо!

YURSHAT
20-01-2010, 19:26
Еще косметический вопрос: как увеличить окошко выбора компонентов и само белое поле с компонентами? А то одна строчка не влезает и из-за нее приходится вниз проматывать. »

WizardForm.ComponentsList.Width:= ScaleX(550);
WizardForm.TypesCombo.Width:= ScaleX(550);

Tukash
20-01-2010, 21:46
помогите!!! нашел скрипт
var
RunProg: TCheckBox;

procedure CheckBoxChecked;
var
res: Integer;
begin
if RunProg.Checked then
// запускаем Grand Theft Auto IV
Exec(ExpandConstant('{src}\Redistributables\gfwlivesetup.exe'), '',
ExpandConstant('{src}\Redistributables'), SW_HIDE, ewWaitUntilTerminated, res);
end;

procedure GreatCheckBox;
begin
RunProg:= TCheckBox.Create(WizardForm);
with RunProg do
begin
Parent := WizardForm;
Caption := 'Запустить игру?';
SetBounds(140,330,150,15);
Cursor:= crHand;
Checked:= True;
end;
end;

procedure CurPageChanged(CurPageID: Integer);
begin
if CurPageID = wpFinished then GreatCheckBox;
end;

procedure CurStepChanged(CurStep: TSetupStep);
begin
if CurStep = ssDone then CheckBoxChecked;
end;
это чекбокс на странице завершения, но что то не получаеться, мне надо что-бы этот чекбокс предлогал, запускать установленную программу, но как прописать правильно непойму, это совсем сбило с толку:!
Exec(ExpandConstant('{src}\Redistributables\gfwlivesetup.exe'), '',
ExpandConstant('{src}\Redistributables'), SW_HIDE, ewWaitUntilTerminated, res);
... надо запустить LaunchGTAIV.exe находиться в {app}, папка с игрой, помогите!!!

A1EXXX
20-01-2010, 21:55
Tukash, если скрипт верен, то, наверное, так:

Exec(ExpandConstant('{app\LaunchGTAIV.exe'), '',
ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, res);

Tukash
20-01-2010, 22:02
A1EXXX
блиииин во я тупанул)))) благодарю!:)

Drongo
20-01-2010, 22:19
Ребята, по возможности посмотрите перенесённое сообщение 869 (http://forum.oszone.net/post-1325031-869.html), человек ведь ждёт. :)

A1EXXX
20-01-2010, 22:27
Drongo, serega355, если пути указаны правильно, то вероятней всего, не хватает рабочей папки в свойствах ярлыка - WorkingDir: {app}; , - попробуйте так: ; Скрипт создан при помощи мастера создания скриптов.
; СМ. ДОКУМЕНТАЦИЮ ДЛЯ ИЗУЧЕНИЯ ДЕТАЛЕЙ ОТНОСИТЕЛЬНО СОЗДАНИЯ ФАЙЛОВ СКРИПТА INNO SETUP!

[Setup]
AppName=Grand Theft Auto Racing Driver
AppVerName=Grand Theft Auto Racing Driver 1.5
AppPublisher=Rockstar Games
AppPublisherURL=http://rockstargames.ru/
AppSupportURL=http://rockstargames.ru/
AppUpdatesURL=http://rockstargames.ru/
DefaultDirName=C:\Program Files\Rockstar Games\Grand Theft Auto Racing Driver
DefaultGroupName=Grand Theft Auto Racing Driver
LicenseFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\License.txt
InfoBeforeFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\info.txt
InfoAfterFile=D:\Игромания\Grand Theft Auto Racing Driver\ReadMe\Readme\files.txt
OutputDir=D:\Игромания\Инсталлятор GTA Racing Driver
OutputBaseFilename=setup
SetupIconFile=D:\Игромания\Grand Theft Auto Racing Driver\data\Icons\app.ico
Password=1345O-9087H-0967K-3555R
Compression=lzma/ultra
SolidCompression=yes
DiskSpanning=yes
SlicesPerDisk=1
DiskSliceSize=999999999
DiskClusterSize=4096
ReserveBytes=0

[Languages]
Name: "russian"; MessagesFile: "compiler:Default.isl"

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Files]
Source: "D:\Игромания\Grand Theft Auto Racing Driver\gta_sa.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\Игромания\Grand Theft Auto Racing Driver\unins000.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\Игромания\Grand Theft Auto Racing Driver\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; ОТМЕТЬТЕ: Не используйте "Флажки: Проигнорировать версию" на любых общедоступных системных файлах

[Icons]
Name: "{group}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: {app};
Name: "{group}\{cm:ProgramOnTheWeb,Grand Theft Auto Racing Driver}"; Filename: "http://rockstargames.ru/"
Name: "{group}\{cm:UninstallProgram,Grand Theft Auto Racing Driver}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: {app}; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: {app}; Tasks: quicklaunchicon

[Run]
Filename: "{app}\gta_sa.exe"; WorkingDir: {app}; Description: "{cm:LaunchProgram,Grand Theft Auto Racing Driver}"; Flags: nowait postinstall skipifsilent

serg aka lain
20-01-2010, 22:28
человек ведь ждёт. »
Возможно, так:

[Icons]
Name: "{group}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: "{app}";
Name: "{group}\{cm:ProgramOnTheWeb,Grand Theft Auto Racing Driver}"; Filename: "http://rockstargames.ru/"
Name: "{group}\{cm:UninstallProgram,Grand Theft Auto Racing Driver}"; Filename: "{uninstallexe}"
Name: "{commondesktop}\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: "{app}"; Tasks: desktopicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Grand Theft Auto Racing Driver"; Filename: "{app}\gta_sa.exe"; WorkingDir: "{app}"; Tasks: quicklaunchicon

Serega
20-01-2010, 23:12
serega355, немного добавлю...

Секция [Setup]:
1. Исправьте: DefaultDirName={pf}\Rockstar Games\Grand Theft Auto Racing Driver
2. Добавьте: Encryption=yes - не критично, но раз уж шифруете...
Секция [Files]:
Удалите первые две строки, они не нужны, т.е. должно быть так:

[Files]
Source: "D:\Игромания\Grand Theft Auto Racing Driver\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs

Ну и про секцию [Icons] A1EXXX и serg aka lain уже сказали ;)




© OSzone.net 2001-2012