问题描述
我使用Wix工具集创建了一个运行良好的安装程序,直到我打开了两个setup.exe实例为止。安装无法将程序集安装到GAC中:
"Error 1935. An error occurred during the installation of an assembly 'MyAssembly,version="3.2.xxxx.xxxxx",culture="neutral",publicKeyToken="xxxxxxxxxxx",processorArchitecture="MSIL". Please refer to Help and Support for more information. HRESULT: 0x80131043. assembly interface: IAssemblyCacheItem,function: Commit,component: {xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx}
Assembly Install: Failing with hr=80070005 at RemoveDirectoryAndChildren,line 393".
我认为MSI事务保持打开状态,用损坏的ACL锁定目录。
重新启动一次解决了此问题,但是我用“ Setup.exe /”运行了“ Setup.exe”。同时打开。
那么,哪个文件夹被锁定了?这不是我的应用程序中的一个。将dll安装到GAC期间是否创建了一个临时文件夹?
解决方法
事实证明是错误的融合(就我而言):
- 由于尚未重新引导的系统更改而打开了一个事务。安装程序恢复一次,但没有两次。
- 构建顺序正在运行先前构建的msi。
- 实际错误是组件属性配置错误。