高级安装程序版本 (8.9) 我开发了一个简单的 .Net 安装程序类。它的特点是提供了一个特定的用户界面,基于 *ini 文件。据我所知,高级安装程序不支持这样的事情。如果我错了,请纠正我!但这不是我问题的重点。根据用户的选择,我的安装程序类会在注册表中合并一个特定的 *.reg 文件。这是我用于该目标的代码:
Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents=false;
proc.StartInfo.FileName="regedit.exe";
proc.StartInfo.Arguments = " \"" + regFilePath + "\"";
proc.StartInfo.UseShellExecute = true;
proc.Start();
因此,如果我有一个 sample.reg 文件排序
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\NIKOLETA]
...
当我在Windows 安装程序(内置于 VS)中导入我的安装程序类时- sample.reg 被很好地合并并且 NIKOLETA 密钥出现在HKEY_CURRENT_USER\SOFTWARE下。不幸的是,当在Advanced Installer下导入安装程序类时- sample.reg 再次合并,但不在所需位置,但 NIKOLETA 键出现在HKEY_USERS.DEFAULT\SOFTWARE下。我被告知 Advanced Installer 的 HKEY_USERS 的默认路径是 HKEY_USERS.DEFAULT\Software[Manufacturer][ProductName]。但是它如何以及为什么会影响 .Net 安装程序类?我该如何解决这个问题,以便正确合并我的 *.reg 文件?谢谢你的期待!