1

ボリューム名ではなくボリューム GUID を使用して、リモート コンピューターにディレクトリが存在するかどうかを確認しようとしています。WMI でこれを実現する方法はありますか? いくつかの異なるアプローチを試してみましたが、WQL 構文が正しくないようです。おそらく文字エスケープが不十分なためです。以下は、問題に対する私の試みの1つです。

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 を何度も試行しましたが、同じ無効なクエリの例外も受け取りました。誰かが過去にこれを試みたことがありますか、それとも可能ですか?

ありがとう、クリス

4

0 に答える 0