問題は、クエリで \ 文字を 2 倍にしていないことだと思います。\ は WQL の予約文字であるため、代わりに \ を使用する必要があります。以下は、私が使用し、機能することができた VBScipt です。これがお役に立てば幸いです。
Main
Sub Main()
WScript.Echo "Initializing WMI..."
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & _
strComputer & "\root\CIMV2")
Set EventSink = WScript.CreateObject( _
"WbemScripting.SWbemSink","SINK_")
WScript.Echo "WMI Initialized."
query = "SELECT * FROM __InstanceModificationEvent WITHIN 1 WHERE TargetInstance ISA 'CIM_DataFile' AND TargetInstance.Path='\\data\\'"
WScript.Echo "Executing Query..."
set results = objWMIservice.ExecNotificationQuery(query)
WScript.Echo "Query Returned."
Do
WScript.Echo "Waiting on events..."
Set evt = results.NextEvent
WScript.Echo "Modified Path:" + evt.TargetInstance.Path
WScript.Echo "Modified Path:" + evt.TargetInstance.Name
Loop
End Sub
同じことを行うために、一部の .NET 言語 (VB.NET や C# など) を介してFileSystemWatcherを使用することにも興味があるかもしれません。