Перейти к содержимому
Zone of Games Forum
SergeiSP

Inno Setup / NSIS / ... - создание инсталляторов

Рекомендованные сообщения

Здравствуйте. Подскажите, какой прогой для создания инталяторов-руссификаторов вы используете для создания руссификаторов. И надо, чтобы программа еще умела по максимуму сжимать файлы, ну как у вас в инсталяторах.

Поделиться сообщением


Ссылка на сообщение

можно ли после установки инсталятора поместить на раб стол иконку не от exe'шника, а с другой?

и ещё вопрос, можно ли содать ярлык к ехе шнику который не входит в папку инсталятора, а находится на жестком,

короче я сделал инсталятор - аддон к half-life- opposing force, там отдельная папка(без ехе шника),

которая устанавливается в папку с hl на жёстком(с общим ехе шником),

можно ли создать ярлык на раб стол от ехе шника в папке hl, чтобы запустить этот аддон(надеюсь понятно:))

Поделиться сообщением


Ссылка на сообщение

А может ли кто нить выложить скрипт инсталятора одного из русиков с ZoG'а (Например Return To Castle Wolfenstain)? А то для меня здешние инсталляторы - идеал качества, а по примерам всегда легче десать, чем по тексту который в мануале! Если можно, то пожалуйста выложите!

Поделиться сообщением


Ссылка на сообщение

Пожалте:

 

Spoiler

 

[setup]AppName=StarCraft rusAppVerName=StarCraft rus 1.3 final miniAppPublisherURL=http://www.zoneofgames.ruAppUpdatesURL=http://www.zoneofgames.ruDefaultDirName={pf}\StarCraftDefaultGroupName=StarCraftOutputDir=D:\setup origOutputBaseFilename=Setup_StarCraft_rus_1.3_miniCompression=lzma/ultraSolidCompression=yesUninstallFilesDir={app}LicenseFile=D:\star prog\Текстовый документ (2).txtInfoBeforeFile=D:\star prog\Документ WordPad mini.rtfWizardImageFile=D:\programms\Inno Setup 5\StarCraft.bmp[Tasks]Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"[Files]Source: "D:\setup orig mini\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirsSource: "D:\setup orig mini\ru_StarCraft_1.3_mini.exe"; DestDir: "{app}"; Flags: ignoreversion;ВНИМАНИЕ: Не используйте "Flags: ignoreversion" для общих системных файлов[icons]Name: "{group}\{cm:UninstallProgram,StarCraft rus}"; Filename: "{uninstallexe}"Name: "{userdesktop}\StarCraft rus"; Filename: "{app}\ru_StarCraft_1.3_mini.exe"; Tasks: desktopicon[Messages]BeveledLabel=Frezzze © 2007 InnoSetup © 1997-2007[Run]Filename: "{app}\ru_StarCraft_1.3_mini.exe"; Description: "{cm:LaunchProgram,StarCraft rus}"; Flags: nowait postinstall skipifsilent

 

Самый простенький скрипт.

Поделиться сообщением


Ссылка на сообщение
Пожалте:

 

Spoiler

 

[setup]AppName=StarCraft rusAppVerName=StarCraft rus 1.3 final miniAppPublisherURL=http://www.zoneofgames.ruAppUpdatesURL=http://www.zoneofgames.ruDefaultDirName={pf}\StarCraftDefaultGroupName=StarCraftOutputDir=D:\setup origOutputBaseFilename=Setup_StarCraft_rus_1.3_miniCompression=lzma/ultraSolidCompression=yesUninstallFilesDir={app}LicenseFile=D:\star prog\Текстовый документ (2).txtInfoBeforeFile=D:\star prog\Документ WordPad mini.rtfWizardImageFile=D:\programms\Inno Setup 5\StarCraft.bmp[Tasks]Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"[Files]Source: "D:\setup orig mini\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirsSource: "D:\setup orig mini\ru_StarCraft_1.3_mini.exe"; DestDir: "{app}"; Flags: ignoreversion;ВНИМАНИЕ: Не используйте "Flags: ignoreversion" для общих системных файлов[icons]Name: "{group}\{cm:UninstallProgram,StarCraft rus}"; Filename: "{uninstallexe}"Name: "{userdesktop}\StarCraft rus"; Filename: "{app}\ru_StarCraft_1.3_mini.exe"; Tasks: desktopicon[Messages]BeveledLabel=Frezzze © 2007 InnoSetup © 1997-2007[Run]Filename: "{app}\ru_StarCraft_1.3_mini.exe"; Description: "{cm:LaunchProgram,StarCraft rus}"; Flags: nowait postinstall skipifsilent

 

Самый простенький скрипт.

Спасибо! Стало легче! Вот ещё вопрос, никак не могу в мануале найти строчку, которая будет отвечать за Бэкап заменяемых файлов! Киньте скрипт пожалуйста!

Поделиться сообщением


Ссылка на сообщение

и, если можно, команду для импорта ветки реестра. Мне кажется я что-то неверно делаю.

Поделиться сообщением


Ссылка на сообщение

Phan1om

[Run]

Filename: {sys}\regedit.exe; Parameters: -s {app}\file.reg; WorkingDir: {sys}; StatusMsg: "Внесение изменений в реестр...";

Поделиться сообщением


Ссылка на сообщение

а у меня такой вопрос,как у нас в инно делать выбор,чего ставить,или допустим выбор версии,там 1.0 или 1.1? И второй,как ярлык создавать на рабочем столе?

Поделиться сообщением


Ссылка на сообщение

de}{ter

Выбор компонентов:

 

Spoiler

 

[Components]Name: "Основные файлы"; Description: "Основные файлы"; Types: full compact custom; Flags: fixedName: "дополнение"; Description: "дополнение для ..."; Types: custom[Files]Source: "C:\1\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirsSource: "C:\1\дополнение\*"; DestDir: "{app}\1\дополнение\"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: дополнение

 

Ярлык на рабочем столе:

 

Spoiler

 

[Tasks]Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checkablealone[icons]Name: "{userdesktop}\Имя ярлыка"; Filename: "{app}\1\запуск.exe"; WorkingDir: "{app}\1\"; Tasks: desktopicon

 

Поделиться сообщением


Ссылка на сообщение

вопрос на засыпку,очередной....как забацать всплывающую перед установкой картинку?

Изменено пользователем de}{ter

Поделиться сообщением


Ссылка на сообщение

Пожскажите плиз кто-нить, как сделать так, чтобы резервные копии делались! А то сделал мод для игры, а он заменяет ориг. файлы, а хочется чтоб при удалении мода игра принимала первозданный вид!

Поделиться сообщением


Ссылка на сообщение

так,со сплешем разобрался...Codename Al3x :

 

Spoiler

[setup]

AppName=My_Program_Update

AppVerName=My_Program_Update version 1.5

DisableProgramGroupPage=yes

UninstallFilesDir={app}\Update_Uninstall

[Files]

Components: eng; Source: C:\embedded\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs;

Components: rus; Source: C:\embedded\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs; BeforeInstall: CreateBackup

[Components]

Name: "rus"; Description: "Russian version"; Types: rus

Name: "eng"; Description: "English version"; Types: eng

[Types]

Name: "rus"; Description: "Create Backup *.bak-files (autorestoring after update uninstalling)";

Name: "eng"; Description: "Don't create backup (uninstaller not create)";


//Создание бэкапа

procedure CreateBackup;

var

srcFile, destFile: string;

begin

srcFile:= ExpandConstant(CurrentFileName);

destFile:= srcFile + '.bak';

DeleteFile(destFile);

RenameFile(srcFile, destFile);

end;

//Процедура восстановления бэкапа

procedure RestoreBackup(backupDir: string);

var

srcFile, destFile: string;

FSR, DSR: TFindRec;

FindResult: Boolean;

APath: string;

begin

APath := AddBackslash(backupDir);

FindResult := FindFirst(APath + '*.bak', FSR);

try

while FindResult do

begin

if FSR.Attributes and FILE_ATTRIBUTE_DIRECTORY = 0 then

begin

srcFile:= APath + FSR.Name;

destFile:= Copy(srcFile, 0, Length(srcFile)-4);

DeleteFile(destFile);

RenameFile(srcFile, destFile);

end;

FindResult := FindNext(FSR);

end;

FindResult := FindFirst(APath + '*.*', DSR);

while FindResult do

begin

if ((DSR.Attributes and FILE_ATTRIBUTE_DIRECTORY) = FILE_ATTRIBUTE_DIRECTORY) and

not ((DSR.Name = '.') or (DSR.Name = '..')) then

RestoreBackup(APath + DSR.Name);

FindResult := FindNext(DSR);

end;

finally

FindClose(FSR);

FindClose(DSR);

end;

end;

//Восстанавливаем резервируемые файлы после удаления

procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);

begin

if CurUninstallStep = usPostUninstall then

begin

RestoreBackup(ExpandConstant('{app}'))

end;

end;

//Удаляем папку с деинсталлятором обновления и соответствующей записью реестра в зависимости от выбора установки

procedure CurStepChanged(CurStep: TSetupStep);

var

s3:string;

begin

If CurStep=ssPostInstall

then

begin

s3:=ExpandConstant('{app}')+'\Backup';

If not DirExists(s3)

then

begin

DelTree(ExpandConstant('{app}')+'\Update_Uninstall', True, True, True);

begin

//В названии ключа должно быть указано имя данной программы обновления

RegDeleteKeyIncludingSubkeys(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\My_Program_Update_is1')

end;

end;

end;

end;

Изменено пользователем de}{ter

Поделиться сообщением


Ссылка на сообщение

У меня возникла следующая проблема : В игре Bus Driver данные читаются из игрового архива base.scs, какой являет собой простой несжатый ZIP архив, просто расширение у него *.scs. Недавно создал перевод для этой игры, и хотел бы научить Inno Setup распаковать этот base.scs, заменить соответствующие файлы с текстом и шрифтами, и заархивировать назад. Может кто знает, как такое сделать? Благодарю.

P.S. Если нужно, могу указать список файлов.

Поделиться сообщением


Ссылка на сообщение

Подскажите пожалуйста, как правильно изменять надписи в стартовом окне инсталлятора:image.JPG

И еще хотелось бы узнать, как создать инсталлятор, чтобы он не прописовался в реестре и чтобы не содержал в себе файл unins000.exe?

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас



Zone of Games © 2003–2024 | Реклама на сайте.

×