Ejecutar código al inicio.

30/06/2004 - 07:33 por Aníbal | Informe spam
Hola,
Cuando mi programa se inicia quiero ejecutar una instancia de la clase
FileSystemWatcher por cada disco rigido que exista en la maquina, establecer
sus propiedades y controlar sus eventos (para cada instancia); pero tengo el
problema que al no saber cuantos HD (o particiones) puede haber en una
maquina, obiamente no puedo saber cuantas variables voy a tener que definir
sino hasta que se ejecute el programa y eso sin contar el problema de los
eventos.

¿Sugerencias?
 

Leer las respuestas

#1 Tristan
30/06/2004 - 13:55 | Informe spam
Prueba algo así:

Imports System.Management
Imports System.IO

Dim wmi As New ManagementObjectSearcher("select * from
Win32_LogicalDisk where DriveType = 3")
Dim unidad As ManagementObject
For Each unidad In wmi.Get()
Dim watcher As New FileSystemWatcher(unidad
("DeviceID").ToString() & "\")
AddHandler watcher.Created, AddressOf watcher_Created
' Lo mismo para Changed, Deleted, ...
watcher.EnableRaisingEvents = True
Next

Private Sub watcher_Created(sender As Object, e As
FileSystemEventArgs)
MsgBox("Creado: " & e.FullPath)
End Sub


No olvides añadir una referencia a System.Management.

Preguntas similares