Beispielprojekte zu Dateioperationen in .NET
FileSystemEnumerator
In diesem Beispiel wird demonstriert, wie man rekursiv Ordner und Dateien in einem bestimmten Ordner aufzählen kann. Die Aufzählung kann für gewisse Unterordner abgebrochen werden. Dadurch ist es beispielsweise möglich, alle Dateien mit Erweiterung .exe
zu finden, die zwar in C:\
, nicht aber in C:\WINDOWS
liegen. Das vorliegende Beispiel stellt keinen Anspruch auf Vollständigkeit und optimale Geschwindigkeit, sondern soll das Konzept der Rekursion in Bezug auf den Umgang mit Dateisystemobjekten vermitteln.
Die Klasse FileSystemEnumerator
stellt die Funktionalität zur Aufzählung zur Verfügung. Für jeden gefundenen Ordner wird da Ereignis DirectoryFound
, für jede Datei FileFound
ausgelöst. Innerhalb der Ereignisbehandlungsprozedur für das Ereignis DirectoryFound
kann ein Flag gesetzt werden, das den Enumerator anweist, in diesem Ordner keine weitere Aufzählung durchzuführen.
- Beispielprojekt (
FileSystemEnumerator.zip
) Projekt im Visual-Basic-.NET-2003-Format.
IniLib
Die Bibliothek IniLib bietet lesenden und schreibenden Zugriff auf Windows-Initialisierungsdateien (INI-Dateien) basierend auf der Win32-API.
- Beispielprojekt (
IniLib.zip
) Projekt im Visual-Basic-2005-Format.
Transactions
Diese Bibliothek kapselt die unverwaltete Programmierschnittstelle des Kernel Transaction Managers (KTM) und Win32-API-Funktionen zum Zugriff auf das Dateisystem. Die bereitgestellten Methoden nutzen wahlweise den KTM oder den Distributed Transaction Coordinator (DTC) zur Transaktionsverwaltung. Ein Großteil der Operationen kann auch ohne Transaktion ausgeführt werden. Die beiliegenden Beispiele zeigen einen Teil der Funktionen der Bibliothek, darunter das Kopieren von Dateien mit Fortschrittsanzeige in separaten Threads und das Ausführen von Dateioperationen in einer Transaktion.
- Beispielprojekt (
Transactions.zip
) Projekt im Visual-Basic-2008-Format.