1

我如何通过 ISTool 设置这些东西:

  • 如何设置基于 64/32 系统的安装路径?我想看看,如果用户有 32/64 系统,该设置将使用正确的安装路径。

  • 我想要,该设置将创建特定的注册表项,其中将是基于用户安装文件夹的安装路径。用户可以更改文件夹,但我不知道如何创建动态注册表项。我可以创建将写入我想要的内容的修复注册表项。

Example: HKEY_CURRENT_USER\Software\Ascaron Entertainment\Sacred 2]
"ShortcutProgramMenu"="Installed"
"Language"="en_UK"
"Speech"="en_UK"
"MovieTrack"="5"
"CurrentVersion"="2.34.0.0"
"InstallPath"="{PATH}\\"
"LastUpdateCheck"=dword:000b3872

[HKEY_LOCAL_MACHINE\SOFTWARE\Ascaron Entertainment\Sacred 2]
"Language"="en_UK"
"Speech"="en_UK"
"MovieTrack"="5"
"InstallPath"="{PATH}\\"
"CurrentVersion"="2.34.0.0"

我想要那个,InstallPath 将基于 od 用户决定。谢谢帮助。

4

1 回答 1

2

您的[Registry]部分将如下所示:

[Registry]
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "ShortcutProgramMenu"; ValueData: "Installed";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "Language"; ValueData: "en_UK";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "Speech"; ValueData: "en_UK";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "MovieTrack"; ValueData: "5";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "CurrentVersion"; ValueData: "2.34.0.0";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "InstallPath"; ValueData: "{app}\";
Root: HKCU; Subkey: Software\Ascaron Entertainment\Sacred 2; 
ValueType: dword; ValueName: "LastUpdateCheck"; ValueData: "$000b3872";
Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "Language"; ValueData: "en_UK";
Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "Speech"; ValueData: "en_UK";
Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "MovieTrack"; ValueData: "5";
Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "InstallPath"; ValueData: "{app}\";
Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "CurrentVersion"; ValueData: "2.34.0.0";

在这种情况下,如果您将在系统上安装应用程序64bit,您将HKLMWow6432Node. 但是,如果您希望/需要将密钥添加到 64 位分支,您可以使用Check: IsWin64.

例子:

Root: HKLM; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "CurrentVersion"; ValueData: "2.34.0.0"; Check: not IsWin64
Root: HKLM64; Subkey: SOFTWARE\Ascaron Entertainment\Sacred 2; 
ValueType: string; ValueName: "CurrentVersion"; ValueData: "2.34.0.0"; Check: IsWin64
于 2013-05-28T14:37:21.400 回答