繁体   English   中英

在两个由wix生成的msi安装程序中,卸载一个安装程序会导致其他安装程序无法正常工作

[英]In Two wix generated msi installers, uninstalling one installer is causing other one not working

我有两个使用wix(版本3.11)创建的安装程序。 安装程序共享几个dll / ocx文件(旧的VB模块)。

单独安装时,安装程​​序工作正常。 或同时安装两个安装程序。 但是,如果我卸载了任何一个应用程序,那么其他应用程序将无法启动(甚至无法启动)。

我正在使用以下种类的Component标签。

  <Component Id="cmpFF2764B47716F09AAAEBF0C6DC2324E9" Guid="{6A11D493-3293-45DE-B169-B624A26B6D98}" Shared="yes" SharedDllRefCount="yes">
    <File Id="filB539B5FD161C1FA29A10F82339F88A83" KeyPath="yes" Source="$(var.SourceBasePath)\COMMON_FILES\Common\Servers\libsrv.dll" SelfRegCost="1"/>
  </Component>

由于出现错误error CNDL0047 : The TypeLib element is non-advertised and therefore requires a parent File element.我无法使用heat.exe收集dll error CNDL0047 : The TypeLib element is non-advertised and therefore requires a parent File element. https://github.com/wixtoolset/issues/issues/3412/ )。 因此,我将其命名为SelfReg。 现在我坚持这个问题。 任何解决此问题的线索?

虚拟化 :您是否正在使用这些应用程序的公司环境中? 您可以改用现代的App-V软件包吗? 该软件包基本上按需安装(在启动时安装),并允许其部署的应用程序“沙盒”运行或与系统上的其他应用程序隔离。 干扰问题应该消失了。 您还可以通过诸如VMWare之类的系统使用虚拟机,以在其自己的操作系统中运行有问题的应用程序。 如果需要,虚拟机还允许您使用管理员权限运行某些应用程序。 如果您的公司中有包装团队,请与他们谈谈?

我建议上述原因的原因是,我知道VB6应用程序基本上无法部署。 他们有各种各样的怪异问题,需要永远修复,而修复从来没有那么好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM