使用powershell删除Com +应用程序

问题描述 投票:1回答:1

我目前正在自动执行自定义Windows应用程序的安装过程,并试图删除几个com +应用程序,包括其下的所有内容。

显然,这可以通过右键单击并删除来手动完成,但是我需要一些方法来简化此过程,并且可以将powershell添加到自动化过程中。

我已经尝试了以下代码,但似乎只删除了应用程序中的组件。尽管这样做有帮助,然后我需要在另一步骤中删除该应用程序。

$comCatalog = New-Object -ComObject COMAdmin.COMAdminCatalog
$appColl = $comCatalog.GetCollection("Applications")
$appColl.Populate()

$app = $appColl | where {$_.Name -eq "ApplicationName"}
$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++
}

我希望能够删除该应用程序,并且还删除下面的所有内容。

powershell com+
1个回答
0
投票
$comCatalog = New-Object -ComObject COMAdmin.COMAdminCatalog
$appColl = $comCatalog.GetCollection("Applications")
$appColl.Populate()

for ($i=0; $i -lt $appColl.Count; $i++)
{
if ($appColl.Item($i).Name -eq "YourComponentName"){    $appColl.Remove($i)

$ appColl.SaveChanges()}}

© www.soinside.com 2019 - 2024. All rights reserved.