Windows-Server-2008-R2

我可以使用 WMI 或 Powershell 找到 DCOM 應用程序執行檔的路徑嗎?

  • June 23, 2015

我已經在W2K8R2機器上安裝(並註冊)了一個 DCOM 應用程序,它的 GUID 可以在 dcomcnfg 顯示的 DCOM 列表中找到。

我還可以使用 Powershell為其 GUID查找Win32_DCOMApplicationWin32_DCOMApplicationSetting對象:

PS C:\Windows\system32> Get-WMIObject Win32_DCOMApplicationSetting -Filter "AppID='{1CECFD4D-2CFB-4626-95C7-0266C26960FA
}'"


__GENUS                   : 2
__CLASS                   : Win32_DCOMApplicationSetting
__SUPERCLASS              : Win32_COMSetting
__DYNASTY                 : CIM_Setting
__RELPATH                 : Win32_DCOMApplicationSetting.AppID="{1CECFD4D-2CFB-4626-95C7-0266C26960FA}"
__PROPERTY_COUNT          : 12
__DERIVATION              : {Win32_COMSetting, CIM_Setting}
__SERVER                  : MYSRV
__NAMESPACE               : root\cimv2
__PATH                    : \\MYSRV\root\cimv2:Win32_DCOMApplicationSetting.AppID="{1CECFD4D-2CFB-4626-95C7-0266C269
                           60FA}"
AppID                     : {1CECFD4D-2CFB-4626-95C7-0266C26960FA}
AuthenticationLevel       :
Caption                   :
CustomSurrogate           :
Description               :
EnableAtStorageActivation : False
LocalService              :
RemoteServerName          :
RunAsUser                 :
ServiceParameters         :
SettingID                 :
UseSurrogate              : False

輸出顯示我的 GUID 有一個 DCOM 應用程序條目。但是它沒有顯示執行檔的路徑。有沒有辦法使用 WMI 檢索應用程序執行檔的完整路徑?

將 Win32_ClassicCOMClassSetting 類與 Powershell 一起使用

Get-WMIObject Win32_ClassicCOMClassSetting -Filter "AppID='{1CECFD4D-2CFB-4626-95C7-0266C26960FA}'" | select -ExpandProperty InProcServer32

或使用 WMIC

wmic /namespace:\\root\cimv2 path Win32_ClassicCOMClassSetting WHERE AppID^="{1CECFD4D-2CFB-4626-95C7-0266C26960FA}" Get InProcServer32

*這是在 Windows 8.1 x64 上測試的

或使用 reg.exe

reg QUERY HKCR\Wow6432Node\CLSID\{1CECFD4D-2CFB-4626-95C7-0266C26960FA}\Inprocserver32 /ve

當您搜尋系統資料庫時會發生什麼{1CECFD4D-2CFB-4626-95C7-0266C26960FA}

所以powershell組件,這應該讓你開始:

$cred = Get-Credential domain\user
Enter-PSSession <name of computer> -Credential $cred
Set-Location HKCR:\Wow6432Node\CLSID\{1CECFD4D-2CFB-4626-95C7-0266C26960FA}\LocalServer32
Get-ChildItem

引用自:https://serverfault.com/questions/684580