Найдите Win32_Directory с помощью Volume Guid - PullRequest
1 голос
/ 31 марта 2011

Я пытаюсь проверить, существует ли каталог на удаленном компьютере, используя 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();
         }
     }
}

Когда я выполняю этот код, я получаю исключение Invalid Query. Я пробовал множество попыток Powershell для этого запроса и получил то же исключение Invalid Query. Кто-нибудь пытался сделать это в прошлом или это вообще возможно?

Спасибо, Chris

...