2016-12-28 1 views
0

В моем soltuion VS у меня есть проект в C# и проект InstallShield.Как я могу получить версию продукта InstallShield Project из моего основного проекта в C#

Я хотел бы получить продукт версии InstallShield:

enter image description here

Но из моего проекта C# как это:

string Version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); 

Но это версия Ассамблея, а не версия продукта InstallShield.

Можно использовать новый ссылочный COM: InstallShield 22 Автоматизация интерфейса

с этим кодом

var ISObject = new ISWiAuto22.ISWiProject(); 
ISObject.OpenProject(@strPath); 
var version = ISObject.ProductVersion; 

Но с InstallShield Limtied Edition, мы не можем сделать это. Для использования OpenProject файл проекта должен быть .ism и my is .isl, поэтому я получаю сообщение об ошибке: * Этот проект был создан с использованием предыдущей версии InstallShield Developer, InstallShield - установщика Windows или InstallShield Express. *

+0

вы пытаетесь сделать это во время сборки или после того, как вы установили и продукт работает? –

ответ

1

Вы можете использовать COM-интерфейс InstallShield для разбора файла проекта IS.

VBS пример:

Public Sub UpdateInstallerProductCode(strPath, strProductCode) 
Dim objISWiProject 

' Load InstallShield project 
Set objISWiProject = CreateObject("ISWiAuto19.ISWiProject") 
objISWiProject.OpenProject strPath 

' Set new product code 
objISWiProject.ProductCode = "{" & strProductCode & "}" 

' Save and close InstallShield project 
objISWiProject.SaveProject 
objISWiProject.CloseProject 
Set objISWiProject = Nothing 
End Sub 

Я ненавижу VB/S :))

+0

Я смотрю на него прямо сейчас! –

+0

Не работает, я даю вам посмотреть мой пост наверху:/ –

+0

Прошу прощения, я был невнимателен. Да, на моем компьютере я даже не могу создать новый ISWiAuto22.ISWiProject(); , У меня есть COM-исключение сразу. Командная строка отсутствует в версии LE. Я бы предложил вручную проанализировать файл ISL, если вам нужно только получить версию продукта, это не так сложно. –

Смежные вопросы