1

私の vb マクロは、新しいファイル作成のフォルダー パスを監視します。ローカル ドライブのパスを監視できます。ネットワークドライブのパスを提供する方法???

ここに私のコードがあります.here strDirToMonitorは、ネットワークパス(\ share\files)を指定する必要がある場所です

しかし、\は機能していません..

strComputer = "."
strDirToMonitor = "c:\\\\test"
'// Monitor Above every 10 secs...
strTime = "10"

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceOperationEvent WITHIN " & strTime & " WHERE " _
    & "Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
        & "TargetInstance.GroupComponent= " _
            & "'Win32_Directory.Name=" & Chr(34) & strDirToMonitor & Chr(34) & "'")
4

1 に答える 1

0

ネットワークパスは次のように指定されます\\COMPUTUER_NAME\SHARE\PATH。明らかに、ローカルパスの場合と同じように、円記号をエスケープ(2倍)する必要があります。

ただし、リモートパスはローカルマシンによって制御されないため、ネットワークパスとローカルパスで実行できることにはいくつかの違いがあります。そのため、実行しようとしていることが機能するかどうかはわかりません。

編集:コメントで議論されているように...

strComputer = "CompB"
strDirToMonitor = "c:\\\\test"
'// Monitor Above every 10 secs...
strTime = "10"

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceOperationEvent WITHIN " & strTime & " WHERE " _
    & "Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
        & "TargetInstance.GroupComponent= " _
            & "'Win32_Directory.Name=" & Chr(34) & strDirToMonitor & Chr(34) & "'")
于 2012-08-30T06:30:20.037 に答える