我正在使用InstallShield 2009为我继承的代码库生成MSI 。该代码由VB6和.NET 2.0代码(C# 和 C++)组成。我正在Windows XP SP2上开发和安装。
我通过从前一个团队提供的MSI逆向工程创建了InstallShield项目(称为它)。它们的配置现在相同。"MyClient.ISM"
然后我将InstallShield配置为生成MSI。这建成,没有错误。但是,当我尝试运行我的MSI时,它失败了两个
“错误 1001 InstallUtilLib.dll:未知错误”
对话框,然后成功退出它所做的更改然后我MyClient.MSI
使用 msiexec 命令运行。例如
msiexec /lvx C:\inst_server.log /i "C:\MyClient.MSI"
问题似乎是由于2769 error
. 由此产生的日志文件中的错误位置如下:
DEBUG: Error 2769: Custom Action _A11801EAD1E34CFF981127F7B95C3BE5.install
did not close 1 MSIHANDLEs.
此自定义操作试图安装 .NET 服务。所以我然后去了InstallShield并删除了所有自定义操作(安装、卸载、提交和回滚以及相关的 SetProperty)并再次构建和安装。这有效,但不再安装服务。我现在需要使用有效的InstallShield方法安装这些 .NET 服务。