【发布时间】:2018-08-05 14:01:22
【问题描述】:
我的机器上安装了一个 COM+ 应用程序,它有两个组件。这个 COM+ 应用程序是使用 SetupCom.exe 文件创建的,该文件是几年前使用 C# 代码制作的。它用于安装和创建COM+ msi file,但现在我无法访问该代码,我需要从该 COM+ 应用程序中删除一个组件 - 该组件不再使用。
所以,我使用 google 进行搜索,发现一些 PowerShell 脚本可以从 COM+ 应用程序中删除组件,但它们不会创建 msi 文件。我需要这个更新的 COM+ 应用程序 msi\installer 文件,以便我可以将它安装在多台机器上。
以下是从 COM+ 应用程序中删除组件但不创建更新的msi 文件的脚本。
$comCatalog = New-Object -ComObject COMAdmin.COMAdminCatalog
$appColl = $comCatalog.GetCollection("Applications")
$appColl.Populate()
$app = $appColl | where {$_.Name -eq "COMAPPNAME"}
$compColl = $appColl.GetCollection("Components", $app.Key)
$compColl.Populate()
$index = 0
foreach($component in $compColl) {
if ($component.Name -eq "SOMECOMPONENT.NAME") {
$compColl.Remove($index)
$compColl.SaveChanges()
}
$index++
}
【问题讨论】:
标签: window windows-installer powershell-3.0 powershell-4.0 com+