PDA

View Full Version : Basic MSI project InstallShelid automation using Powershell script



MurtyIN
05-08-2018, 07:43 AM
Hello,

I want to automate my Basic MSI project (.ism porject) using Powershell scripting. I'm using Installshield 2018 version.Through script, I want to update the below details and also need to handle errors occurred(if any).

Installation info -> General Info tab -> Product version, Title
Media -> Releases -> Express -> MSI Package File Name

Even, I'm unable to create an object and below is the code.

$designerProject = New-Object -ComObject "ISWiAuto24.ISWiProject"
$ismFilepath = "$scriptPath\Designer.ism"
$designerProject.OpenProject($ismFilepath)

Getting below error (this is partial error list).

New-Object : Retrieving the COM class factory for component with CLSID {520F427A-A0C0-48DA-B1D6-5AD84FEFD1A8} failed due to the following error:
80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
At D:\Murty Build Testing\ToolkitDesignerMSI\BuildToolkitOneDesingerMSI.ps1:78 char:24
+ ... $designerProject = New-Object -ComObject "ISWiAuto24.ISWiProject"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceUnavailable: (:) [New-Object], COMException
+ FullyQualifiedErrorId : NoCOMClassIdentified,Microsoft.PowerShell.Commands.NewObjectCommand

Plz anyone help me in this.

Thanks,
MurtyIN

phanik
05-15-2018, 02:25 AM
you can achieve the same by using VB script as well


If Wscript.Arguments.Count = 0 Then
Wscript.Echo "Please enter the command arguments. >> Build version number"
End If



Set m_ISWiProject = CreateObject("IswiAuto23.ISWiProject")

If ( IsObject(m_ISWiProject) = False)Then
Wscript.Echo "IS2016 Automation Object creation failed."
End If

strFile = Wscript.Arguments(0)
svPVer = Wscript.Arguments(1)
svVar = Wscript.Arguments(2)

WScript.echo svVar

m_ISWiProject.OpenProject strFile

WScript.echo "Opened project" & strFile

'Set pProperty = m_ISWiProject.ISWIProperties.Item("BUILDVERSION")

'pProperty.Value = svVar

WScript.echo svPVer

m_ISWiProject.ProductVersion = svPVer

m_ISWiProject.SaveProject

m_ISWiProject.CloseProject

dpothugunta5208
08-18-2018, 07:11 AM
Hello MurtyIN,

Did you got a solution. i am having the same error with the power shell. it was working fine up untill 2016. after upgrade i am getting the same error as yours. please let me know if you have a solution.

Roman1
08-20-2018, 07:14 AM
$scriptPath = "C:\devX11-Installations\test"
$ISWiProj = New-Object -ComObject ISWiAuto24.ISWiProject
$ismFilepath = "$scriptPath\test.ism"
$ISWiProj.OpenProject($ismFilepath)


$ISWProjRelease = $ISWiProj.ISWiProductConfigs.Item("Product Configuration 1").ISWiReleases.Item("Release 1")

$ISWProjRelease.Build()
$ISWiProj.closeProject()

exit

## USE Powershell x86 ! ##

rrajeshkumar
12-13-2018, 06:24 AM
I am currently working on the licensed InstallShield 2018 and facing an issue i.e: ActiveX component can't create object: 'IswiAuto21.ISWiProject'.

Below are the VB Script, which tries to create the Activex components:

Set m_ISWIProject = CreateObject("IswiAuto21.ISWiProject")
m_ISWIProject.OpenProject(WScript.Arguments(0))
m_ISWIProject.ProductName = WScript.Arguments(1)
m_ISWIProject.SaveProject()
m_ISWIProject.CloseProject()
m_ISWIProject = ""


And but it failing when call the script like below:
"c:\Windows\SysWOW64\cscript" //nologo Release.vbs


The VB Script throwing the error, can you please let me know what is the issue and how to resolve it?


Environment used:

OS: Windows 10 x64
Install Shield: 2018 R2 version

banna_k
12-13-2018, 11:04 PM
Can you try to create the object with "IswiAuto24.ISWiProject" for InstallShield 2018, as mentioned in the below replies.

svengalamr
02-14-2019, 09:33 AM
Did the IswiAuto24.ISWiProject change worked for you?

svengalamr
02-14-2019, 09:34 AM
Did the IswiAuto24.ISWiProject change worked for you?

Thanks
Sesha


I am currently working on the licensed InstallShield 2018 and facing an issue i.e: ActiveX component can't create object: 'IswiAuto21.ISWiProject'.

Below are the VB Script, which tries to create the Activex components:

Set m_ISWIProject = CreateObject("IswiAuto21.ISWiProject")
m_ISWIProject.OpenProject(WScript.Arguments(0))
m_ISWIProject.ProductName = WScript.Arguments(1)
m_ISWIProject.SaveProject()
m_ISWIProject.CloseProject()
m_ISWIProject = ""


And but it failing when call the script like below:
"c:\Windows\SysWOW64\cscript" //nologo Release.vbs


The VB Script throwing the error, can you please let me know what is the issue and how to resolve it?


Environment used:

OS: Windows 10 x64
Install Shield: 2018 R2 version