FileSystemWatcher Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase FileSystemWatcher.
Sobrecargas
FileSystemWatcher() |
Inicializa una nueva instancia de la clase FileSystemWatcher. |
FileSystemWatcher(String) |
Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado que se va a supervisar. |
FileSystemWatcher(String, String) |
Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado y el tipo de archivos que se van a supervisar. |
FileSystemWatcher()
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
Inicializa una nueva instancia de la clase FileSystemWatcher.
public:
FileSystemWatcher();
public FileSystemWatcher ();
Public Sub New ()
Ejemplos
En el ejemplo siguiente se crea un FileSystemWatcher objeto para watch el directorio especificado en tiempo de ejecución. El FileSystemWatcher objeto busca cambios en LastWrite
y LastAccess
horas, y para la creación, eliminación o cambio de nombre de los archivos de texto en el directorio. Si se cambia, crea o elimina un archivo, la ruta de acceso al archivo se muestra en la consola. Cuando se cambia el nombre de un archivo, las rutas de acceso antiguas y nuevas se muestran en la consola.
En este ejemplo se usan los System.Diagnostics espacios de nombres y System.IO .
#include "pch.h"
using namespace System;
using namespace System::IO;
class MyClassCPP
{
public:
int static Run()
{
FileSystemWatcher^ watcher = gcnew FileSystemWatcher("C:\\path\\to\\folder");
watcher->NotifyFilter = static_cast<NotifyFilters>(NotifyFilters::Attributes
| NotifyFilters::CreationTime
| NotifyFilters::DirectoryName
| NotifyFilters::FileName
| NotifyFilters::LastAccess
| NotifyFilters::LastWrite
| NotifyFilters::Security
| NotifyFilters::Size);
watcher->Changed += gcnew FileSystemEventHandler(MyClassCPP::OnChanged);
watcher->Created += gcnew FileSystemEventHandler(MyClassCPP::OnCreated);
watcher->Deleted += gcnew FileSystemEventHandler(MyClassCPP::OnDeleted);
watcher->Renamed += gcnew RenamedEventHandler(MyClassCPP::OnRenamed);
watcher->Error += gcnew ErrorEventHandler(MyClassCPP::OnError);
watcher->Filter = "*.txt";
watcher->IncludeSubdirectories = true;
watcher->EnableRaisingEvents = true;
Console::WriteLine("Press enter to exit.");
Console::ReadLine();
return 0;
}
private:
static void OnChanged(Object^ sender, FileSystemEventArgs^ e)
{
if (e->ChangeType != WatcherChangeTypes::Changed)
{
return;
}
Console::WriteLine("Changed: {0}", e->FullPath);
}
static void OnCreated(Object^ sender, FileSystemEventArgs^ e)
{
Console::WriteLine("Created: {0}", e->FullPath);
}
static void OnDeleted(Object^ sender, FileSystemEventArgs^ e)
{
Console::WriteLine("Deleted: {0}", e->FullPath);
}
static void OnRenamed(Object^ sender, RenamedEventArgs^ e)
{
Console::WriteLine("Renamed:");
Console::WriteLine(" Old: {0}", e->OldFullPath);
Console::WriteLine(" New: {0}", e->FullPath);
}
static void OnError(Object^ sender, ErrorEventArgs^ e)
{
PrintException(e->GetException());
}
static void PrintException(Exception^ ex)
{
if (ex != nullptr)
{
Console::WriteLine("Message: {0}", ex->Message);
Console::WriteLine("Stacktrace:");
Console::WriteLine(ex->StackTrace);
Console::WriteLine();
PrintException(ex->InnerException);
}
}
};
int main()
{
MyClassCPP::Run();
}
using System;
using System.IO;
namespace MyNamespace
{
class MyClassCS
{
static void Main()
{
using var watcher = new FileSystemWatcher(@"C:\path\to\folder");
watcher.NotifyFilter = NotifyFilters.Attributes
| NotifyFilters.CreationTime
| NotifyFilters.DirectoryName
| NotifyFilters.FileName
| NotifyFilters.LastAccess
| NotifyFilters.LastWrite
| NotifyFilters.Security
| NotifyFilters.Size;
watcher.Changed += OnChanged;
watcher.Created += OnCreated;
watcher.Deleted += OnDeleted;
watcher.Renamed += OnRenamed;
watcher.Error += OnError;
watcher.Filter = "*.txt";
watcher.IncludeSubdirectories = true;
watcher.EnableRaisingEvents = true;
Console.WriteLine("Press enter to exit.");
Console.ReadLine();
}
private static void OnChanged(object sender, FileSystemEventArgs e)
{
if (e.ChangeType != WatcherChangeTypes.Changed)
{
return;
}
Console.WriteLine($"Changed: {e.FullPath}");
}
private static void OnCreated(object sender, FileSystemEventArgs e)
{
string value = $"Created: {e.FullPath}";
Console.WriteLine(value);
}
private static void OnDeleted(object sender, FileSystemEventArgs e) =>
Console.WriteLine($"Deleted: {e.FullPath}");
private static void OnRenamed(object sender, RenamedEventArgs e)
{
Console.WriteLine($"Renamed:");
Console.WriteLine($" Old: {e.OldFullPath}");
Console.WriteLine($" New: {e.FullPath}");
}
private static void OnError(object sender, ErrorEventArgs e) =>
PrintException(e.GetException());
private static void PrintException(Exception? ex)
{
if (ex != null)
{
Console.WriteLine($"Message: {ex.Message}");
Console.WriteLine("Stacktrace:");
Console.WriteLine(ex.StackTrace);
Console.WriteLine();
PrintException(ex.InnerException);
}
}
}
}
Imports System.IO
Namespace MyNamespace
Class MyClassVB
Shared Sub Main()
Using watcher = New FileSystemWatcher("C:\path\to\folder")
watcher.NotifyFilter = NotifyFilters.Attributes Or
NotifyFilters.CreationTime Or
NotifyFilters.DirectoryName Or
NotifyFilters.FileName Or
NotifyFilters.LastAccess Or
NotifyFilters.LastWrite Or
NotifyFilters.Security Or
NotifyFilters.Size
AddHandler watcher.Changed, AddressOf OnChanged
AddHandler watcher.Created, AddressOf OnCreated
AddHandler watcher.Deleted, AddressOf OnDeleted
AddHandler watcher.Renamed, AddressOf OnRenamed
AddHandler watcher.Error, AddressOf OnError
watcher.Filter = "*.txt"
watcher.IncludeSubdirectories = True
watcher.EnableRaisingEvents = True
Console.WriteLine("Press enter to exit.")
Console.ReadLine()
End Using
End Sub
Private Shared Sub OnChanged(sender As Object, e As FileSystemEventArgs)
If e.ChangeType <> WatcherChangeTypes.Changed Then
Return
End If
Console.WriteLine($"Changed: {e.FullPath}")
End Sub
Private Shared Sub OnCreated(sender As Object, e As FileSystemEventArgs)
Dim value As String = $"Created: {e.FullPath}"
Console.WriteLine(value)
End Sub
Private Shared Sub OnDeleted(sender As Object, e As FileSystemEventArgs)
Console.WriteLine($"Deleted: {e.FullPath}")
End Sub
Private Shared Sub OnRenamed(sender As Object, e As RenamedEventArgs)
Console.WriteLine($"Renamed:")
Console.WriteLine($" Old: {e.OldFullPath}")
Console.WriteLine($" New: {e.FullPath}")
End Sub
Private Shared Sub OnError(sender As Object, e As ErrorEventArgs)
PrintException(e.GetException())
End Sub
Private Shared Sub PrintException(ex As Exception)
If ex IsNot Nothing Then
Console.WriteLine($"Message: {ex.Message}")
Console.WriteLine("Stacktrace:")
Console.WriteLine(ex.StackTrace)
Console.WriteLine()
PrintException(ex.InnerException)
End If
End Sub
End Class
End Namespace
Comentarios
No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0.
En la tabla siguiente se muestran los valores de propiedad iniciales de una instancia de FileSystemWatcher.
Propiedad | Valor inicial |
---|---|
NotifyFilter | combinación OR bit a bit de LastWrite , FileName y DirectoryName |
EnableRaisingEvents | false |
Filter | "*.*" (Ver todos los archivos). |
IncludeSubdirectories | false |
InternalBufferSize | 8192 |
Path | cadena vacía ("") |
Nota
El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true
.
Consulte también
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Se aplica a
FileSystemWatcher(String)
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado que se va a supervisar.
public:
FileSystemWatcher(System::String ^ path);
public FileSystemWatcher (string path);
new System.IO.FileSystemWatcher : string -> System.IO.FileSystemWatcher
Public Sub New (path As String)
Parámetros
- path
- String
El directorio que se va a supervisar, en notación de Convención de nomenclatura universal (Universal Naming Convention, UNC) o estándar.
Excepciones
El parámetro path
es null
.
El parámetro path
es una cadena vacía ("").
o bien
La ruta de acceso especificada mediante el parámetro path
no existe.
path
es demasiado largo.
Comentarios
Nota
El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true
.
El componente puede watch archivos en su equipo personal, una unidad de red o un equipo remoto.
No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0. La Filter propiedad se establece de forma predeterminada en watch todos los archivos.
Consulte también
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Se aplica a
FileSystemWatcher(String, String)
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
- Source:
- FileSystemWatcher.cs
Inicializa una nueva instancia de la clase FileSystemWatcher, dado el directorio especificado y el tipo de archivos que se van a supervisar.
public:
FileSystemWatcher(System::String ^ path, System::String ^ filter);
public FileSystemWatcher (string path, string filter);
new System.IO.FileSystemWatcher : string * string -> System.IO.FileSystemWatcher
Public Sub New (path As String, filter As String)
Parámetros
- path
- String
El directorio que se va a supervisar, en notación de Convención de nomenclatura universal (Universal Naming Convention, UNC) o estándar.
- filter
- String
El tipo de archivos que se van a inspeccionar. Por ejemplo, "*.txt" inspecciona cambios en todos los archivos de texto.
Excepciones
El parámetro path
es una cadena vacía ("").
o bien
La ruta de acceso especificada mediante el parámetro path
no existe.
path
es demasiado largo.
Comentarios
Nota
El componente no watch el directorio especificado hasta Path que se establece y EnableRaisingEvents es true
.
El componente puede watch archivos en su equipo personal, una unidad de red o un equipo remoto.
No se puede watch un equipo remoto que no tenga Windows NT o Windows 2000. No se puede watch un equipo remoto de Windows NT 4.0 desde un equipo Con Windows NT 4.0.
Consulte también
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes