[英]WQL for REF properties: PowerShell vs C#
簡單的查詢在PowerShell中運行良好:
gwmi -Query "select * from Win32_DependentService where Antecedent='\\\\MYPC\\root\\cimv2:Win32_SystemDriver.Name=`"WdFilter`"'"
但它在C#中不起作用:
var scope = new ManagementScope("\\\\MYPC\\Root\\Cimv2");
scope.Connect();
var searcher = new ManagementObjectSearcher(scope, new ObjectQuery("select * from Win32_DependentService where Antecedent = '\\\\MYPC\\root\\cimv2:Win32_SystemDriver.Name=\"WdFilter\"'"));
ManagementObjectCollection queryCollection = searcher.Get();
var count = queryCollection.Count; // "Invalid query" exception here!!!
C#查詢有什么問題? 謝謝!
固定! 我們需要更多的反斜杠(最多八個!)。 正確的代碼是:
var scope = new ManagementScope("\\\\MYPC\\Root\\Cimv2");
var searcher = new ManagementObjectSearcher(scope, new ObjectQuery("select * from Win32_DependentService where Antecedent='\\\\\\\\MYPC\\\\root\\\\cimv2:Win32_SystemDriver.Name=\"WdFilter\"'"));
var queryCollection = searcher.Get();
var count = queryCollection.Count; // it's OK now
希望它對其他人有幫助:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.