我想要創建一個腳本,當一個新文件被添加到一個文件夾時它將運行一個聲音。 問題是我打開vbscript至少5次來測試代碼,並且當我只添加1個文件時代碼運行5次。它看起來像腳本的多個實例同時運行。使用WMI的Vbscript有多個實例
如何恢復腳本? 編輯:我發現了一個臨時修復,這是重新啓動WMI服務使用 淨停止winmgmt 淨啓動winmgmt 但這是不實際的,因爲我將不得不每次重新啓動WMI使用WMI測試vbscript。
Dim objShell
Set objShell = Wscript.CreateObject("WScript.Shell")
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\cimv2")
Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceCreationEvent WITHIN 10 WHERE " _
& "Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
& "TargetInstance.GroupComponent= " _
& "'Win32_Directory.Name=""c:\\\\scripts""'")
Do
Set objLatestEvent = colMonitoredEvents.NextEvent
objShell.Run "Soundscript.vbs"
' Using Set is mandatory
Set objShell = Nothing
Set objWMIService = Nothing
Loop