在我们的环境中,我们在极少数情况下使用 Powershell 包装器部署一些应用程序。出于记录目的,我们希望脚本在安装期间从 SCCM 检索属性。有问题的属性是名称、版本和供应商。做了一些研究,我发现我从 SCCM 2012 Client SDK 获得了一个 CCM_Application 实例:
Get-WmiObject -Namespace "Root\CCM\Clientsdk" -Class "CCM_Application" | Where {$_.EvaluationState -eq 12}
通过查找EvaluationState 值12,我在软件中心找到了当前正在安装的应用程序。这对于部署到设备的应用程序非常有用。然而; 当使用部署给用户的应用程序运行它时,它不会返回任何内容。做了一些研究,我发现 CCM_Application 是以用户为中心的,运行脚本的特权服务帐户没有应用程序的实例。
有没有办法使上述代码与部署给用户的应用程序一起工作?还; 有没有更好的方法在执行期间以某种方式从 ccmexec 检索属性?