Пардон, уже ответили ...vint56, да, ясно .
Ещё позвольте спросить.
Как создать ярлык, который будет запускать игру с правами администратора ?
Примерно так:
Код:[Registry] Root: HKLM; SubKey: SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers; ValueType: string; ValueName: {app}\{#ExeName}; ValueData: RUNASADMIN; Flags: uninsdeletevalue uninsdeletekeyifempty
Написано позже.
Хочу, чтобы создалось 2 ярлыка, но рисуется на столе только один.
Вот что прописал.
[Icons]
/////////////////////////ЯРЛЫК В Панели (чекбокс)
Name: {group}\{#GameName}; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}\bin; Check: CheckError
Name: {group}\{#GameName}; Filename: {app}\bin\farcry3_d3d11.exe; WorkingDir: {app}\bin; Check: CheckError
Name: {group}\Удалить {#GameName}; Filename: {uninstallexe}; WorkingDir: {app}; Check: CheckError
/////////////////////////ЯРЛЫК на рабочем столе (чекбокс)
Name: {userdesktop}\{#GameName}; Filename: {app}\bin\farcry3.exe; WorkingDir: {app}\bin; Check: CheckError and Desktop1; Parameters: -offline -language=Russian
Name: {userdesktop}\{#GameName}; Filename: {app}\bin\farcry3_d3d11.exe; WorkingDir: {app}\bin; Check: CheckError and Desktop1; Parameters: -offline -language=Russian
Вероятно, ошибся где-то.
Создаётся только farcry3_d3d11.exe.
Создавай каждый ярлык под своим именем, а не как у тебя два ярлыка под одним именем, что и приводит к отсутствию второгоСергей, спасибо всё равно.
А что насчёт двух ярлыков ?
#define MyAppName "My Program"
#define MyAppVersion "1.5"
#define MyAppExeName "MyProg.exe"
[Setup]
AppName={#MyAppName}
AppVersion={#MyAppVersion}
DefaultDirName={pf}\{#MyAppName}
[Files]
Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\32; Check: not IsWin64
Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\64; Check: IsWin64
как-то так:vint56, спасибо большое.
И ещё вопросик, в этой связи.
У меня два архива win32.arc и win64.arc, как мне увязать их установку от разрядности ?
if not IsWin64 then begin
if not ISArcExtract(0, 0, ExpandConstant('{src}\win32.arc'), ExpandConstant('{app}'), '', false, '{#password}', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
end else
if not ISArcExtract(0, 0, ExpandConstant('{src}\win64.arc'), ExpandConstant('{app}'), '', false, '{#password}', ExpandConstant('{tmp}\arc.ini'), ExpandConstant('{app}'), notPCFonFLY{PCFonFLY}) then break;
[Files]
Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\32; Check: not IsWin64
Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\64; Check: IsWin64
Возможно не очень чётко выразился, извините в таком случае.Речь о той же форме скрипта, что здесь всё время обсуждается.
Нет, этого не требуется ...Спасибо, Сергей.
Сейчас попробуем.
А вот это
Тоже надо вписать ?Код:[Files] Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\32; Check: not IsWin64 Source: C:\Program Files (x86)\Inno Setup 5\Examples\MyProg.exe; DestDir: {app}\64; Check: IsWin64
хорошо,спасибоJodyFa, как запретить? Нужно смотреть в скрипте создание этого ини файла и убирать. Как скрыть? Установить файлу атрибут скрытый, или системный.
Код:SetFileAttributes(PChar(ExpandConstant('{app}\Desktop.ini')), FILE_ATTRIBUTE_HIDDEN or FILE_ATTRIBUTE_SYSTEM);