2008-09-16 8 views
0

Ich habe diese Idee für eine kostenlose Backup-Anwendung.Lesen von Dateien in Verwendung und Systemdateien unter Windows XP und Vista mit .NET

Das größte Problem, das ich im Moment lösen muss, ist der Zugriff auf Dateien, die gerade verwendet werden oder Systemdateien sind. Ich möchte, dass die Anwendung in der Lage ist, eine vollständige Sicherung von Dateien durchzuführen (d. H. Nicht auf einem Sektor von Sektor zu Sektor).

Ich werde den Server Teil der Anwendung in einen Dienst verwandeln. Zuallererst muss dieser Dienst mit administrativen Rechten ausgeführt werden, denke ich? Und zweitens, ist es möglich, auf gesperrte Dateien und Dateien zuzugreifen, die vom System verwendet werden? Vielleicht nehmen Sie diese Dateien nach dem nächsten Neustart? (Ich habe einige Anti-Virus-Anwendungen auf diese Weise gesehen.)

Ich werde C# und die .NET-Plattform verwenden, wie es scheint der einfachste Weg, um Windows-Anwendungen in diesen Tagen zu entwickeln.

+0

Bitte beachten Sie, dass der Titel eine andere Frage stellt als der Text; Ich kam hierher, um eine Antwort auf die Frage im Titel zu finden, und war enttäuscht. – reinierpost

Antwort

5

Was Sie in Bezug auf die verwendeten Dateien suchen, ist die " Volume Shadow Copy Service ", die auf Windows XP, Server 2003 und höher verfügbar ist. Dadurch können Sie Dateien kopieren, auch wenn sie gerade verwendet werden.

Ich habe einen CodeProject Artikel " Volume Shadow Copies from .NET " gefunden, der eine einfache Outlook PST-Backup-Anwendung beschreibt, die gegen Volume Shadow Copy geschrieben wurde.

1

Machen Sie ein Google auf HoboCopy. Es ist ein Open-Source-Backup-Tool für Windows, das Dateien sichern kann, die mit Windows Volume Shadow Service verwendet werden.

+0

Das HoboCopy SourceForge Projekt ist hier: http://sourceforge.net/projects/wangdera/ –

1

Nichts in .NET, die das direkt AFAIK tun könnte.

Ich denke, Sie suchen nach Volume Shadow Copy auf XP/Vista, die für diese Art von Aufgabe konzipiert ist.

+0

Vielen Dank für den Tipp! Nach einigem Suchen fand ich: http://www.codeproject.com/KB/dotnet/makeshadowcopy.aspx Zumindest scheint es möglich, diese Methoden von .NET aufzurufen. –

Verwandte Themen