FileSystemWatcher Konstruktory
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Inicializuje novou instanci FileSystemWatcher třídy.
Přetížení
FileSystemWatcher() |
Inicializuje novou instanci FileSystemWatcher třídy. |
FileSystemWatcher(String) |
Inicializuje novou instanci FileSystemWatcher třídy vzhledem k zadanému adresáři k monitorování. |
FileSystemWatcher(String, String) |
Inicializuje novou instanci FileSystemWatcher třídy vzhledem k zadanému adresáři a typu souborů ke sledování. |
FileSystemWatcher()
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
Inicializuje novou instanci FileSystemWatcher třídy.
public:
FileSystemWatcher();
public FileSystemWatcher ();
Public Sub New ()
Příklady
Následující příklad vytvoří objekt pro FileSystemWatcher watch adresáři zadaném za běhu. Objekt FileSystemWatcher sleduje změny v LastWrite
časech a LastAccess
časech a vytváření, odstranění nebo přejmenování textových souborů v adresáři. Pokud dojde ke změně, vytvoření nebo odstranění souboru, zobrazí se v konzole cesta k souboru. Při přejmenování souboru se v konzole zobrazí staré a nové cesty.
V tomto příkladu se používají obory System.Diagnostics názvů a 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
Poznámky
Vzdálený počítač, který nemá systém Windows NT nebo Windows 2000, nelze watch. Vzdálený počítač systém Windows NT 4.0 nelze watch z počítače se systémem systém Windows NT 4.0.
Následující tabulka obsahuje počáteční hodnoty vlastností pro instanci .FileSystemWatcher
Vlastnost | Počáteční hodnota |
---|---|
NotifyFilter | bitová kombinace OR , LastWrite FileName aDirectoryName |
EnableRaisingEvents | false |
Filter | "*.*" (Sledujte všechny soubory.) |
IncludeSubdirectories | false |
InternalBufferSize | 8192 |
Path | prázdný řetězec ("") |
Poznámka
Komponenta nebude watch zadaného adresáře, dokud Path není nastavena hodnota a EnableRaisingEvents je true
.
Viz také
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Platí pro
FileSystemWatcher(String)
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
Inicializuje novou instanci FileSystemWatcher třídy vzhledem k zadanému adresáři k monitorování.
public:
FileSystemWatcher(System::String ^ path);
public FileSystemWatcher (string path);
new System.IO.FileSystemWatcher : string -> System.IO.FileSystemWatcher
Public Sub New (path As String)
Parametry
- path
- String
Adresář, který chcete monitorovat, ve standardním zápisu nebo v zápisu UNC (Universal Naming Convention).
Výjimky
Parametr path
je null
.
Parametr path
je prázdný řetězec ("").
-nebo-
Cesta zadaná prostřednictvím parametru path
neexistuje.
path
je příliš dlouhý.
Poznámky
Poznámka
Komponenta nebude watch zadaného adresáře, dokud Path není nastavena hodnota a EnableRaisingEvents je true
.
Komponenta může watch soubory na osobním počítači, na síťové jednotce nebo na vzdáleném počítači.
Vzdálený počítač, který nemá systém Windows NT nebo Windows 2000, nelze watch. Vzdálený počítač systém Windows NT 4.0 nelze watch z počítače se systémem systém Windows NT 4.0. Vlastnost Filter je ve výchozím nastavení nastavená na watch všechny soubory.
Viz také
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes
Platí pro
FileSystemWatcher(String, String)
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
- Zdroj:
- FileSystemWatcher.cs
Inicializuje novou instanci FileSystemWatcher třídy vzhledem k zadanému adresáři a typu souborů ke sledování.
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)
Parametry
- path
- String
Adresář, který chcete monitorovat, ve standardním zápisu nebo v zápisu UNC (Universal Naming Convention).
- filter
- String
Typ souborů, které chcete watch. Například "*.txt" sleduje změny všech textových souborů.
Výjimky
Parametr path
je prázdný řetězec ("").
-nebo-
Cesta zadaná prostřednictvím parametru path
neexistuje.
path
je příliš dlouhý.
Poznámky
Poznámka
Komponenta nebude watch zadaného adresáře, dokud Path není nastavena hodnota a EnableRaisingEvents je true
.
Komponenta může watch soubory na osobním počítači, na síťové jednotce nebo na vzdáleném počítači.
Vzdálený počítač, který nemá systém Windows NT nebo Windows 2000, nelze watch. Vzdálený počítač systém Windows NT 4.0 nelze watch z počítače se systémem systém Windows NT 4.0.
Viz také
- NotifyFilters
- FileSystemEventArgs
- FileSystemEventHandler
- Filter
- InternalBufferOverflowException
- Path
- RenamedEventArgs
- RenamedEventHandler
- WaitForChangedResult
- WatcherChangeTypes