InstallShield Basic MSI项目通过CommandLine IsCmdBld.exe生成新GUID

时间:2017-03-07 21:30:06

标签: automation installshield

我有一个Installshield项目.ism,我希望能够通过命令行运行它。有可能的方法由CommadnLine使用IsCmdBld.exe生成新的产品代码

注意:不能使用其他构建软件

提前致谢

2 个答案:

答案 0 :(得分:3)

由于@Steve提到您无法通过命令行生成新的产品代码,但您可以使用命令行设置新的产品代码。您需要的是使用第三方应用程序(或使用自动化)生成随机GUID,您可以在命令行中设置此新GUID,如下所示...

IsCmdBld.exe -z "ProductCode={D1B1C3E2-AA6F-455C-8533-C642EED0512D}"

还有一件事我想提一下......我希望你明白,通过更换你的包裹的产品代码,它将会执行" major"每次升级。这是你想要做的吗?通常开发人员都试图避免使用#34; major"随着产品的发展,产品升级并进行小幅升级。

答案 1 :(得分:2)

您不能通过命令行工具,但如果您有最新版本的InstallShield(不确定添加了自动化的可用性版本),您可以通过自动化界面。

以下是如何在C#中执行此操作的示例。

// You'll need to add a reference in your C# project
// for ISWiAuto19 (may also work with ISWiAuto16)
var is1 = new ISWiAuto19.ISWiProject();
is1.OpenProject("path to ism project file")
is1.ProductCode = Guid.NewGuid();
is1.SaveProject();
is1.CloseProject();

更多细节可以在这里找到: http://helpnet.installshield.com/installshield19helplib/helplibrary/IHelpAutoISWiProject.htm