BTSTask 安装程序 - Windows 安装程序错误 1001
当我运行 BTSTask 生成的 MSI 时,我收到一个奇怪的错误:
要生成 MSI:
BTSTask ExportApp /ApplicationName:MyBizTalkApp /Package:MyBizTalkApp.msi
当我运行安装程序时,我得到:
当我从 BizTalk 管理员控制台导出 MSI 然后运行它时,也会发生这种情况。
我创建了一个 msiexec 日志文件。发生此错误的行似乎是:
DEBUG: Error 2835: The control ErrorIcon was not found on dialog ErrorDialog
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2835. The arguments are: ErrorIcon, ErrorDialog,
Error 1001. Error 1001: An error occurred while attempting to install the BizTalk application: A file load exception occurred while attempting to install the assembly into the Global Assembly Cache. This error may occur if the assembly is delay signed, or if assembly was renamed after creating/signing.
The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
MSI (s) (2C!40) [15:58:01:321]:
MSI (s) (2C:3C) [15:58:01:362]: Leaked MSIHANDLE (26) of type 790531 for thread 7232
MSI (s) (2C:3C) [15:58:01:411]: Note: 1: 2769 2: _4804EF1F_F198_428B_A6B1_B30276127E0A.install 3: 1
DEBUG: Error 2769: Custom Action _4804EF1F_F198_428B_A6B1_B30276127E0A.install did not close 1 MSIHANDLEs.
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2769. The arguments are: _4804EF1F_F198_428B_A6B1_B30276127E0A.install, 1,
CustomAction _4804EF1F_F198_428B_A6B1_B30276127E0A.install returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (s) (2C:3C) [15:58:01:619]: Closing MSIHANDLE (25) of type 790536 for thread 7776
Action ended 15:58:01: InstallFinalize. Return value 3.
编辑:MSI 中的程序集均未延迟签名或已重命名。我用 sn -vf 检查了它们,它们都是有效的。
EDIT2:这种情况发生在我所有的服务器上(Win2k8 R2),
非常感谢任何帮助。
I am getting a weird error when I run an MSI generated by BTSTask:
To generate the MSI:
BTSTask ExportApp /ApplicationName:MyBizTalkApp /Package:MyBizTalkApp.msi
When I run the installer I get this:
This also happens when I export the MSI from the BizTalk Administrator Console and then run it.
I have created a msiexec logfile. The lines where this error occurs seems to be:
DEBUG: Error 2835: The control ErrorIcon was not found on dialog ErrorDialog
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2835. The arguments are: ErrorIcon, ErrorDialog,
Error 1001. Error 1001: An error occurred while attempting to install the BizTalk application: A file load exception occurred while attempting to install the assembly into the Global Assembly Cache. This error may occur if the assembly is delay signed, or if assembly was renamed after creating/signing.
The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
MSI (s) (2C!40) [15:58:01:321]:
MSI (s) (2C:3C) [15:58:01:362]: Leaked MSIHANDLE (26) of type 790531 for thread 7232
MSI (s) (2C:3C) [15:58:01:411]: Note: 1: 2769 2: _4804EF1F_F198_428B_A6B1_B30276127E0A.install 3: 1
DEBUG: Error 2769: Custom Action _4804EF1F_F198_428B_A6B1_B30276127E0A.install did not close 1 MSIHANDLEs.
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2769. The arguments are: _4804EF1F_F198_428B_A6B1_B30276127E0A.install, 1,
CustomAction _4804EF1F_F198_428B_A6B1_B30276127E0A.install returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (s) (2C:3C) [15:58:01:619]: Closing MSIHANDLE (25) of type 790536 for thread 7776
Action ended 15:58:01: InstallFinalize. Return value 3.
EDIT: None of the assemblies in the MSI are delay signed or have been renamed. I checked them all with sn -vf and they are all valid.
EDIT2: This happens on all my servers (Win2k8 R2)
Any help greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
MSI 正在尝试在 GAC 中安装 dll。为此,必须使用强名称密钥对 dll 进行签名,并且签名后不得更改 dll 的名称。
另一种可能性是安装 MSI 的进程不允许将 dll 添加到 GAC。 MSI 安装在 Windows 安装程序服务下运行,请检查该服务的标识。
下一种可能性是其中一个 dll 的名称带有特殊字符。尝试手动将 dll 添加到 gac 中。
The MSI is trying to install a dll in the GAC. To do this the dll must be signed with a strong name key, and the name of the dll must not have been changed after signing.
The other possibility is that the process installing the MSI is not allowed to add dll's to the GAC. The MSI install is run under the windows installer service, check the identity of that service.
Next possibility is that one of the dll's has a name with a special character. Try adding the dll's to the gac manually.