我脚本在远程服务器上的COM +应用程序的启动和停止文档($ comPlusAppList)如预期。使用PowerShell的验证COM +包的状态使用PowerShell
但是,我想添加某种形式的验证/验证以确认该功能已成功;理想情况下,我想检查特定软件包的状态,并根据状态将成功/失败消息写回主机。
如何访问COM +包状态(停止/正在运行)来完成此操作?
我脚本在远程服务器上的COM +应用程序的启动和停止文档($ comPlusAppList)如预期。使用PowerShell的验证COM +包的状态使用PowerShell
但是,我想添加某种形式的验证/验证以确认该功能已成功;理想情况下,我想检查特定软件包的状态,并根据状态将成功/失败消息写回主机。
如何访问COM +包状态(停止/正在运行)来完成此操作?
我只能提供一个答案的提示。我一直在试图弄清楚,但还没有。这个链接http://msdn.microsoft.com/en-us/library/windows/desktop/ms684369(v=vs.85).aspx应该提供你所需要的,但我还没有想出如何枚举应用程序的PropertyInfo集合。
下面的脚本作品:
Invoke-Command -ComputerName $compname -ScriptBlock{ $Catalog = New- Object -com COMAdmin.COMAdminCatalog
$oapplications = $catalog.getcollection("Applications")
$oapplications.populate()
foreach ($oapplication in $oapplications){
$skeyappli = $oapplication.key
$oappliInstances = $oapplications.getcollection("ApplicationInstances",$skeyappli)
$oappliInstances.populate()
# To verify if application is started
If ($oappliInstances.count -eq 0) {
Write-Host "Application"$oapplication.value("Name")"is stopped" -ForegroundColor Red
} Else{
Write-Host "Application"$oapplication.value("Name")"is Running" -ForegroundColor Green
}
}
}