FileSystemWatcher Construtores
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicializa uma nova instância da classe FileSystemWatcher.
Sobrecargas
FileSystemWatcher() |
Inicializa uma nova instância da classe FileSystemWatcher. |
FileSystemWatcher(String) |
Inicializa uma nova instância da classe FileSystemWatcher, conforme o diretório especificado para monitorar. |
FileSystemWatcher(String, String) |
Inicializa uma nova instância da classe FileSystemWatcher, conforme o diretório especificado e os tipos de arquivo a se monitorar. |
FileSystemWatcher()
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
Inicializa uma nova instância da classe FileSystemWatcher.
public:
FileSystemWatcher();
public FileSystemWatcher ();
Public Sub New ()
Exemplos
O exemplo a seguir cria um FileSystemWatcher objeto para watch o diretório especificado em tempo de execução. O FileSystemWatcher objeto observa as alterações em LastWrite
e LastAccess
horas e para a criação, exclusão ou renomeação de arquivos de texto no diretório. Se um arquivo for alterado, criado ou excluído, o caminho para o arquivo será exibido para o console. Quando um arquivo é renomeado, os caminhos antigos e novos são exibidos no console.
Este exemplo usa os System.Diagnostics namespaces e 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
Comentários
Não é possível watch um computador remoto que não tenha Windows NT ou Windows 2000. Não é possível watch um computador remoto Windows NT 4.0 de um computador Windows NT 4.0.
A tabela a seguir mostra valores de propriedade iniciais para uma instância do FileSystemWatcher.
Propriedade | Valor inicial |
---|---|
NotifyFilter | combinação OR bit a bit de LastWrite , FileName e DirectoryName |
EnableRaisingEvents | false |
Filter | "*.*" (Assista a todos os arquivos.) |
IncludeSubdirectories | false |
InternalBufferSize | 8192 |
Path | cadeia de caracteres vazia ("") |
Observação
O componente não watch o diretório especificado até que o Path seja definido e EnableRaisingEvents seja true
.
Confira também
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Aplica-se a
FileSystemWatcher(String)
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
Inicializa uma nova instância da classe FileSystemWatcher, conforme o diretório especificado para monitorar.
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
O diretório a ser monitorado, em notação UNC (Universal Naming Convention) ou padrão.
Exceções
O parâmetro path
é null
.
O parâmetro path
é uma cadeia de caracteres vazia ("").
- ou -
O caminho especificado por meio do parâmetro path
não existe.
path
é muito longo.
Comentários
Observação
O componente não watch o diretório especificado até que o Path seja definido e EnableRaisingEvents seja true
.
O componente pode watch arquivos em seu computador pessoal, uma unidade de rede ou um computador remoto.
Não é possível watch um computador remoto que não tenha Windows NT ou Windows 2000. Não é possível watch um computador remoto Windows NT 4.0 de um computador Windows NT 4.0. A Filter propriedade é definida por padrão como watch todos os arquivos.
Confira também
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Aplica-se a
FileSystemWatcher(String, String)
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
- Origem:
- FileSystemWatcher.cs
Inicializa uma nova instância da classe FileSystemWatcher, conforme o diretório especificado e os tipos de arquivo a se monitorar.
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
O diretório a ser monitorado, em notação UNC (Universal Naming Convention) ou padrão.
- filter
- String
O tipo de arquivos a ser inspecionado. Por exemplo, "*. txt" observa alterações em todos os arquivos de texto.
Exceções
O parâmetro path
é uma cadeia de caracteres vazia ("").
- ou -
O caminho especificado por meio do parâmetro path
não existe.
path
é muito longo.
Comentários
Observação
O componente não watch o diretório especificado até que o Path seja definido e EnableRaisingEvents seja true
.
O componente pode watch arquivos em seu computador pessoal, uma unidade de rede ou um computador remoto.
Não é possível watch um computador remoto que não tenha Windows NT ou Windows 2000. Não é possível watch um computador remoto Windows NT 4.0 de um computador Windows NT 4.0.
Confira também
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes