FileSystemWatcher Konstruktoren
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse.
Überlädt
FileSystemWatcher() |
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse. |
FileSystemWatcher(String) |
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse mit dem für die Überwachung angegebenen Verzeichnis. |
FileSystemWatcher(String, String) |
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse mit dem für die Überwachung angegebenen Verzeichnis und Dateityp. |
FileSystemWatcher()
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse.
public:
FileSystemWatcher();
public FileSystemWatcher ();
Public Sub New ()
Beispiele
Im folgenden Beispiel wird ein FileSystemWatcher Objekt erstellt, um das zur Laufzeit angegebene Verzeichnis zu überwachen. Das FileSystemWatcher Objekt überwacht Änderungen und LastWrite
LastAccess
Uhrzeiten sowie die Erstellung, Löschung oder Umbenennung von Textdateien im Verzeichnis. Wenn eine Datei geändert, erstellt oder gelöscht wird, wird der Pfad zur Datei in der Konsole angezeigt. Wenn eine Datei umbenannt wird, werden die alten und neuen Pfade in der Konsole angezeigt.
In diesem Beispiel werden die System.Diagnostics Namespaces verwendet 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
Hinweise
Sie können keinen Remotecomputer überwachen, auf dem Windows NT oder Windows 2000 nicht vorhanden ist. Sie können keinen Windows NT 4.0-Remotecomputer von einem Windows NT 4.0-Computer überwachen.
In der folgenden Tabelle sind die anfänglichen Eigenschaftswerte für eine Instanz von FileSystemWatcher.
Eigenschaft | Anfangswert |
---|---|
NotifyFilter | bitweise OR-Kombination von LastWrite , FileName und DirectoryName |
EnableRaisingEvents | false |
Filter | "*.*" (Schauen Sie sich alle Dateien an.) |
IncludeSubdirectories | false |
InternalBufferSize | 8192 |
Path | leere Zeichenfolge ("") |
Hinweis
Die Komponente überwacht das angegebene Verzeichnis erst, wenn sie Path festgelegt ist, und EnableRaisingEvents ist true
.
Siehe auch
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Gilt für
FileSystemWatcher(String)
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse mit dem für die Überwachung angegebenen Verzeichnis.
public:
FileSystemWatcher(System::String ^ path);
public FileSystemWatcher (string path);
new System.IO.FileSystemWatcher : string -> System.IO.FileSystemWatcher
Public Sub New (path As String)
Parameter
- path
- String
Das zu überwachende Verzeichnis in der Standard- oder UNC (Universal Naming Convention)-Notation.
Ausnahmen
Der path
-Parameter ist null
.
Der path
-Parameter ist eine leere Zeichenfolge ("").
- oder -
Der durch den path
-Parameter angegebene Pfad ist nicht vorhanden.
path
ist zu lang.
Hinweise
Hinweis
Die Komponente überwacht das angegebene Verzeichnis erst, wenn sie Path festgelegt ist, und EnableRaisingEvents ist true
.
Die Komponente kann Dateien auf Ihrem Persönlichen Computer, einem Netzwerklaufwerk oder einem Remotecomputer überwachen.
Sie können keinen Remotecomputer überwachen, auf dem Windows NT oder Windows 2000 nicht vorhanden ist. Sie können keinen Windows NT 4.0-Remotecomputer von einem Windows NT 4.0-Computer überwachen. Die Filter Eigenschaft ist standardmäßig so festgelegt, dass alle Dateien überwacht werden.
Siehe auch
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Gilt für
FileSystemWatcher(String, String)
Initialisiert eine neue Instanz der FileSystemWatcher-Klasse mit dem für die Überwachung angegebenen Verzeichnis und Dateityp.
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)
Parameter
- path
- String
Das zu überwachende Verzeichnis in der Standard- oder UNC (Universal Naming Convention)-Notation.
- filter
- String
Der zu überwachende Dateityp. Bei "*.txt" werden z. B. alle Textdateien auf Änderungen überwacht.
Ausnahmen
Der path
-Parameter ist eine leere Zeichenfolge ("").
- oder -
Der durch den path
-Parameter angegebene Pfad ist nicht vorhanden.
path
ist zu lang.
Hinweise
Hinweis
Die Komponente überwacht das angegebene Verzeichnis erst, wenn sie Path festgelegt ist, und EnableRaisingEvents ist true
.
Die Komponente kann Dateien auf Ihrem Persönlichen Computer, einem Netzwerklaufwerk oder einem Remotecomputer überwachen.
Sie können keinen Remotecomputer überwachen, auf dem Windows NT oder Windows 2000 nicht vorhanden ist. Sie können keinen Windows NT 4.0-Remotecomputer von einem Windows NT 4.0-Computer überwachen.
Siehe auch
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes