In a previous blog post, I’ve posted a small VBScript that can change the summary information for an MSI or MST. But what if you want to use Powershell to achieve that?
Well, here is the script
$windowsInstaller = New-Object -ComObject WindowsInstaller.Installer $MSI = $windowsInstaller.OpenDatabase("C:\Test\Test.msi", 1) $SummaryInfo = $MSI.SummaryInformation(4) $SummaryInfo.Property(2) = "Test Title" $SummaryInfo.Property(3) = "Test Subject" $SummaryInfo.Property(4) = "Test Author" $SummaryInfo.Property(5) = "Test Keywords" $SummaryInfo.Property(6) = "Test Comments" $SummaryInfo.Persist() $MSI.Commit() [System.Runtime.Interopservices.Marshal]::ReleaseComObject($windowsInstaller)| Out-Null
As previously stated, each field you want to customize in the summary information stream has a PID (Property ID). For more information about PIDs and what is the right one to use in your situation check out the official Microsoft page for Manage Summary Information.