Msbuild 如何为InstallShield实例转换设置ProductCode

Msbuild 如何为InstallShield实例转换设置ProductCode,msbuild,installshield,Msbuild,Installshield,我可以使用MSBuild为单实例安装程序设置产品代码,如下所示: <ItemGroup> <InstallShieldPropertyOverrides Include="{$(Guid)}"> <Property>ProductCode</Property> </InstallShieldPropertyOverrides> </ItemGroup> 产品代码 如何设置实例1产品代码

我可以使用MSBuild为单实例安装程序设置产品代码,如下所示:

<ItemGroup>
    <InstallShieldPropertyOverrides Include="{$(Guid)}">
         <Property>ProductCode</Property>
    </InstallShieldPropertyOverrides>
</ItemGroup>

产品代码
如何设置实例1产品代码? 这可能吗?
如果没有,那么在使用自动生成时,在每个实例转换上设置产品代码的适当方法是什么?

实际上,您最好的选择可能是使用Windows Installer或XML automation编辑项目文件。此场景非常特殊,很可能会在将来导致更新问题,因此InstallShield不直接支持它


要确定需要更改的内容,请保存项目的副本,然后手动添加或更新实例转换。然后使用MsiDiff或文本diff(取决于您使用的是二进制还是XML项目),以确定项目数据库是如何修改的,并找出如何自动实现等效更改。

感谢您确认我没有错过一个明显的简单解决方案。您提到这是一个专门的场景,但是您如何支持安装程序的主要升级以及实例转换呢?或者你的意思是使用实例转换本身就是一个专门化的场景吗?我的意思是实例转换本身是专门化的,并且自动化对其产品代码的更改更是如此。当然,您是正确的,您需要更改每个实例的产品代码以实现合理的主要升级。