簡體   English   中英

WMI class 在 MECM 上存儲什么 Deployment Type 安裝程序

[英]What WMI class stores Deployment Type installation program on MECM

我需要通過 WMI 類檢索與 MECM 應用程序相關的數據,更具體地說,我需要獲取應用程序部署類型屬性 - 安裝/卸載程序。

你能幫我嗎,我可以使用什么確切的 WMI class 來獲取這些信息。

感謝您的任何幫助。

部署類型道具

不幸的是,這不是很容易獲得信息 afaik,但在 powershell(或任何可以真正訪問 wmi 的編程語言)的幫助下,它可以完成。

信息本身存儲在屬性SDMPackageXML的 Class SMS_Application中。

現在,如果您查詢它,您會注意到的第一件事是它可能是空的。 那是因為它是惰性屬性。 要在 PS 中解決這個問題,您必須在 wmi object 上調用一個額外的get()

如果你這樣做(或者有一些工具只顯示所有惰性參數)你會注意到它 - 正如名稱所暗示的那樣 - 基本上是一個 XML 文檔,它存儲了你需要的信息。 所以你必須從 XML 中提取它。

關於如何為單個應用程序執行此操作的一些示例代碼是:

$app = Get-WmiObject -Class SMS_Application -Namespace "root\SMS\site_sitecode" -computer "your site server" -Filter "LocalizedDisplayName='your app name'"
$app.Get()
$installCMD = (([xml](($app).SDMPackageXML)).AppMgmtDigest.DeploymentType.Installer.InstallAction.Args.Arg | where {$_.Name -ieq "InstallCommandLine"}).'#text'
$uninstallCMD = (([xml](($app).SDMPackageXML)).AppMgmtDigest.DeploymentType.Installer.InstallAction.Args.Arg | where {$_.Name -ieq "UninstallCommandLine"}).'#text'

我不太擅長 xml 解析,所以可能有更好的方法,或者您可能不需要解析,但可以只對 xml 摘要進行字符串比較。 只需從查看 SDMPackageXML 開始,然后您可能就會了解如何最好地分析它以滿足您自己的需要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM