使用Volume Guid搜索Win32_Directory

时间:2011-03-31 13:21:45

标签: c# wmi wql system.management

我正在尝试使用卷GUID而不是卷名来检查远程计算机上是否存在目录。 WMI有什么方法可以实现这一目标吗?我尝试了一些不同的方法,但我的WQL语法似乎永远不正确,很可能是因为糟糕的字符转义。以下是我对此问题的尝试之一:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Management;

namespace ConsoleApplication1
{
     class Program
     {
         static void Main(string[] args)
         {
                ObjectQuery query = new ObjectQuery("Select * From Win32_Directory Where Name=\"" + @"\\\\?\\Volume{10b4259b-f659-11df-b8cc-806e6f6e6963}\\test" + "\"");

                ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);
                ManagementObjectCollection coll = searcher.Get();
                foreach (ManagementObject mo in coll)
                {
                    Console.Write("found");
                }
                 Console.Read();
         }
     }
}

当我执行此代码时,我收到一个无效查询异常。我在此查询中尝试了多次Powershell尝试,并且也收到了相同的无效查​​询异常。有没有人在过去尝试过这种情况,或者甚至可能吗?

谢谢, 克里斯

0 个答案:

没有答案