file - ventajas - visual basic script descargar
Activar un VBScript cuando se agrega un archivo a una carpeta (1)
Esta pregunta ya tiene una respuesta aquí:
- Monitorear unidad. Usando VB Script 1 respuesta
Deseo automatizar algunas tareas. Necesito mover archivos de una carpeta a otra. He escrito el guión a continuación, que funciona bien.
Pero mi requisito es activar este script VB automáticamente, en segundo plano, cuando se crea o se agrega un archivo a una carpeta.
''Script Begins
With CreateObject("Scripting.FileSystemObject")
.MoveFile "C:/Source/Files/*.*", "D:/Destination/Files/"
End With
''Script Ends
InstanceCreationEvent
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!//./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
With CreateObject("Scripting.FileSystemObject")
.MoveFile "C:/Source/Files/*.*", "D:/Destination/Files/"
End With
Loop
InstanceModificationEvent
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!//./root/cimv2")
Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceModificationEvent WITHIN 10 WHERE Targetinstance ISA ''CIM_DirectoryContainsFile'' and TargetInstance.GroupComponent= ''Win32_Directory.Name=""c:////scripts""''")
Do
Set objLatestEvent = colMonitoredEvents.NextEvent
Wscript.Echo objLatestEvent.TargetInstance.PartComponent
Loop
InstanceDeletionEvent
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!//./root/cimv2")
Set colMonitoredEvents = objWMIService.ExecNotificationQuery _
("SELECT * FROM __InstanceDeletionEvent WITHIN 10 WHERE Targetinstance ISA ''CIM_DirectoryContainsFile'' and TargetInstance.GroupComponent= ''Win32_Directory.Name=""c:////scripts""''")
Do
Set objLatestEvent = colMonitoredEvents.NextEvent
Wscript.Echo objLatestEvent.TargetInstance.PartComponent
Loop