diff --git a/InnoSetupScripts/copy-release.bat b/InnoSetupScripts/copy-release.bat new file mode 100644 index 0000000..273742b --- /dev/null +++ b/InnoSetupScripts/copy-release.bat @@ -0,0 +1,7 @@ +@echo on +rd /q /s bin +mkdir bin +copy ..\Ra2CsfToolsGUI\bin\Release\*.exe bin\ +copy ..\Ra2CsfToolsGUI\bin\Release\*.exe.config bin\ +copy ..\Ra2CsfToolsGUI\bin\Release\*.dll bin\ +pause \ No newline at end of file diff --git a/InnoSetupScripts/setup.iss b/InnoSetupScripts/setup.iss new file mode 100644 index 0000000..22ed58e --- /dev/null +++ b/InnoSetupScripts/setup.iss @@ -0,0 +1,84 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +#define MyAppName "Ra2CsfToolsGUI" +#define MyAppVersion "1.3.0" +#define MyAppPublisher "Sad Pencil" +#define MyAppURL "https://github.com/SadPencil/Ra2CsfToolsGUI" +#define MyAppExeName "Ra2CsfToolsGUI.exe" +#define WorkingDir "." + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{5D552E67-8EC1-4127-9772-577FDCD04DF0} +AppName={#MyAppName} +AppVersion={#MyAppVersion} +AppVerName={#MyAppName} {#MyAppVersion} +AppPublisher={#MyAppPublisher} +AppPublisherURL={#MyAppURL} +AppSupportURL={#MyAppURL} +AppUpdatesURL={#MyAppURL} +DefaultDirName={autopf}\{#MyAppName} +DefaultGroupName={#MyAppName} +AllowNoIcons=yes +; Uncomment the following line to run in non administrative install mode (install for current user only.) +;PrivilegesRequired=lowest +PrivilegesRequiredOverridesAllowed=dialog +OutputBaseFilename={#MyAppName}-setup-{#MyAppVersion} +Compression=lzma +SolidCompression=yes +WizardStyle=modern +ChangesAssociations=yes +ArchitecturesInstallIn64BitMode=x64 arm64 +;ArchitecturesAllowed=x86 x64 arm64 + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" +Name: "armenian"; MessagesFile: "compiler:Languages\Armenian.isl" +Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl" +Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl" +Name: "chinesesimplified"; MessagesFile: "compiler:Languages\ChineseSimplified.isl" +Name: "chinesetraditional"; MessagesFile: "compiler:Languages\ChineseTraditional.isl" +Name: "corsican"; MessagesFile: "compiler:Languages\Corsican.isl" +Name: "czech"; MessagesFile: "compiler:Languages\Czech.isl" +Name: "danish"; MessagesFile: "compiler:Languages\Danish.isl" +Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl" +Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl" +Name: "french"; MessagesFile: "compiler:Languages\French.isl" +Name: "german"; MessagesFile: "compiler:Languages\German.isl" +Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl" +Name: "icelandic"; MessagesFile: "compiler:Languages\Icelandic.isl" +Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl" +Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl" +Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl" +Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl" +Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl" +Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl" +Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl" +Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl" +Name: "turkish"; MessagesFile: "compiler:Languages\Turkish.isl" +Name: "ukrainian"; MessagesFile: "compiler:Languages\Ukrainian.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}" + +[Files] +Source: "{#WorkingDir}\bin\*"; DestDir: "{app}"; Flags: ignoreversion +; NOTE: Don't use "Flags: ignoreversion" on any shared system files + +[Icons] +Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" +Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" +Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon + +[Registry] +Root: HKA; Subkey: "Software\Classes\.csf\OpenWithProgids"; ValueType: string; ValueName: "SadPencil.Ra2CsfToolsGUI.csf"; ValueData: ""; Flags: uninsdeletevalue +Root: HKA; Subkey: "Software\Classes\SadPencil.Ra2CsfToolsGUI.csf"; ValueType: string; ValueName: ""; ValueData: "RA2 string table file"; Flags: uninsdeletekey +Root: HKA; Subkey: "Software\Classes\SadPencil.Ra2CsfToolsGUI.csf\DefaultIcon"; ValueType: string; ValueName: ""; ValueData: "{app}\{#MyAppExeName},0" +Root: HKA; Subkey: "Software\Classes\SadPencil.Ra2CsfToolsGUI.csf\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\{#MyAppExeName}"" ""%1""" +Root: HKA; Subkey: "Software\Classes\Applications\{#MyAppExeName}\SupportedTypes"; ValueType: string; ValueName: ".csf"; ValueData: "" + +[Run] +Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent +