【发布时间】:2020-05-19 05:19:09
【问题描述】:
我想创建一个函数来通过 powershell 删除程序。我似乎无法弄清楚到底该怎么做。
我的代码:
function RemoveProgram {
$app = Get-CimInstance -Class Win32_Product | Where-Object {
$_.Name -match $args
}
$app.Uninstall()
}
但是,当我运行它时,我得到了
Method invocation failed because [Microsoft.Management.Infrastructure.CimInstance] does not contain a method named 'Uninstall'.
有没有人有一些关于如何让它变得更好的提示?
【问题讨论】:
-
CIM cmdlet没有与数据建立实时连接。这是设计使然。您需要使用
Invoke-CimMethod调用该方法或切换回使用Get-WmiObject,因为它仍然与数据有实时连接。 -
Get-WmIObject 在我的 powershell 版本上不起作用
-
啊!那么您可能会将该信息 - 以及您的 PoSh 版本 - 放在您的问题中。这很重要... [咧嘴笑]
标签: function powershell scripting