当前位置: 首页 > 知识库问答 >
问题:

msi数据库组件表中两个不同条目的相同组件GUID

周和歌
2023-03-14

我正在将某些程序集打包到 msi 包中。在执行此操作时,我要求将一些程序集放入本地文件系统以及目标计算机的 GAC 中。众所周知,在这种情况下,重复文件表将无济于事。我决定将程序集放在具有不同标识符的 CAB 文件中两次。现在,为了填充组件表,我有不同的组件标识符,但我没有用于类似程序集的不同组件 GUID。我的问题是,如果我为具有不同组件标识符(在组件表中)的条目保持GUID(因为基本上程序集是相同的)相同,它会影响程序集的安装或卸载吗?此外,如果我更改这些程序集的组件 GUID(通过动态生成 GUID),它是否会影响将来对程序集的更新(因为特定程序集的 GUID 应该是唯一的)?注意:我们正在使用自己的应用程序来创建 MSI 软件包。

共有1个答案

许嘉福
2023-03-14

如果我们在安装时使用相同的 GUID 注册两个不同的组件,则一切正常。但在卸载期间,组件 MSI 表中后面的组件不会从注册表或 GAC 中取消注册。所以我们将遇到DLL地狱般的问题。

 类似资料:
  • 我想创建一个包含所有价格选项的列表,并将唯一的值放在下拉列表中,所以我这样做: 此代码引发错误: 警告:遇到具有相同键的两个子项。键应该是唯一的,以便组件在更新时维护它们的标识。非唯一键可能导致重复和/或省略子键-此行为不受支持,并且可能在未来版本中更改。 从到 更新我也添加到它呈现的地方。 和SearchHandlerPrice:

  • 我在xml文件中使用了约束布局。我有一个类似例子中的视图。Imageview和textview。我希望这两个在点击后有相同的动作。怎么才能把两者组合在一起,给他们一个id? xml:

  • 我有两个不同长度的数据帧。我想用CAP*货币和Go*货币与df_cur的乘法来改变数据帧df中的列。这应该在国家和年份必须分别对两个数据家族相同的条件下完成。更具体地说, #df# #df_cur# 所以,我想像这样变换df: #df# 我回顾了许多将两个数据帧大小不同的列相乘得到的答案,但没有任何结果。 我的代码示例: 非常感谢您的宝贵时间!

  • 问题内容: 这听起来很简单,我想我的想法太复杂了。 我想制作一个数组,其元素是从两个形状相同的源数组生成的,具体取决于源数组中哪个元素更大。 为了显示: 我不知道如何产生一个将array1和array2的元素组合在一起的array3,以产生一个数组,其中仅取两个array1 / array2元素值中的较大者。 任何帮助将非常感激。谢谢。 问题答案: 我们可以使用NumPy内置的,正是为此而制作的-

  • 我有一个String类型的数组列表和一个Person类型的数组列表。其中,Person是一个仅包含包含名称的字符串的对象。 假设我这样做, 假设创建一个新的Person对象会将名称设置为“Josh”,并假设Person类具有该名称的get方法。 有没有办法检查名称数组列表中是否包含名为Josh的人。 我唯一能想到的就是这个, 现在,如果Person数组列表和names数组列表包含多个元素,如何检查

  • 本文向大家介绍详解JS取出两个数组中的不同或相同元素,包括了详解JS取出两个数组中的不同或相同元素的使用技巧和注意事项,需要的朋友参考一下 1、取出两个数组的不同元素 (1)concat() 方法:用于连接两个或多个数组。  该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本,例: (2)Array filter() 方法: 创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所