vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Net-Framework: Beschädigte Dateien löschen 
Autor: Manfred X
Datum: 14.05.18 16:42

Hallo!

Wegen einer kurzfristigen Unterspannung im Stromnetz
ist eine externe Festplatte während des Betriebs
abgestürzt.

Dabei entstand eine "beschädigte Datei" (NTFS-Dateisystem),
die mit Windows-Methoden (Win 10) nicht umbenannt, verschoben oder
gelöscht werden kann.
Auch die Framework-Methode "System.IO.File.Delete" scheitert,
löst dabei aber keine Ausnahme aus (FW 4.6).
VB-spezifische Methoden wie z.B. "Kill" scheitern auch, werfen
aber eine (irreführende) Ausnahme: Datei nicht gefunden.

Kennt jemend eine Net-Bibliothek, die Methoden zur Bearbeitung
von Files enthält, die ggf. die korrekte Ausnahme "beschädigte Datei"
auslösen (z.B. entsprechend dem Verhalten des Windows-Explorers)?

(Nach Reparatur des Fehlers im Dateisystem ist die beschädigte Datei
natürlich wieder verfügbar. Aber NTFS-Korrektur ist hier nicht das Thema.)

Danke für Euer Interesse.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Franki
Datum: 15.05.18 01:52

Hallo ManfredX

helfen kann ich dir da nicht. Aber ich habe zu diesem Problem ein paar Fragen:

NTFS Reparatur wäre mein erster Lösungsvorschlag gewesen, warum scheidet der bei dir aus?

Was hat es mit der "Unterspannung" auf sich?
Alle Werbeaussagen von Steckdosen Herstellern überschlagen sich, dass sie gegen Überspannung (z.B. Blitzeinschlag usw.) abgesichert sind, bei Unterspannung fällt mir spontan nur "Stromausfall" ein, dafür habe ich USV.

Was passiert denn, wenn du versuchst die entsprechende Datei aus einer Datensicherung zu kopieren? Ich vermute mal, dass das auch nicht klappt. (Also nur die Datei nicht den ganzen Rechner)

Ich bin gespannt, ob es andere Antworten gibt, vermute aber, dass das nicht funktionieren wird. Denn Wenn es bei gestartetem Windows und darauf aufsetztenden Programmen nicht geht, hilft halt immer nur die Direktmethode über das NTFS Dateisystem. Das war schon bei Win 3.1 so

Gruß und viel Erfolg,

Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Manfred X
Datum: 15.05.18 11:58

Hallo!

Zur kurzfristigen Unterspannung im Stromnetz kam es wegen
eines Defekts in einem Verteilerkasten des Netzbetreibers.

Zugriff auf Datensicherung ist in dem Fall nicht erforderlich,
weil diese Datei im Erstellungsprozeß beschädigt worden ist.


Es gibt bekanntlich eine Reihe von Gründen, die zu einem Fehler im
Dateisystem führen können. Deswegen sollten Anwendungen erkennen
und melden können, wenn sie bei der Bearbeitung auf NTFS-Probleme
stoßen.
Das Verhalten der üblicherweise verwendeten Framework-Methoden
scheint in solchen Fällen unbefriedigend zu sein.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Manfred X
Datum: 16.05.18 08:07

Hat jemand diesbezügliche Erfahrungen mit dem Erstellen/Nutzen von Files per Transaktion?

https://www.heise.de/developer/artikel/NTFS-Dateisystemtransaktionen-mit-NET-programmieren-1188587.html

Beitrag wurde zuletzt am 16.05.18 um 08:29:45 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: minimalist
Datum: 16.05.18 09:00

Was heißt beschädigt? Wie soll ein program, das den file nicht erstellt hat, raus finden ob die binary data beschädigt ist - das heist geändert vom original?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Manfred X
Datum: 16.05.18 09:11

Hallo!

"Beschädigung" bezieht sich nicht auf eine Änderung des Datei-INHALTS,
sondern um gescheiterte Zugriffe als Folge von Fehlern im NTFS-Dateisystem
(z.B. Clusterzuordnung, Einträge in der MasterFileTable, Sicherheits-
einstellungen), die durch Soft- oder Hardware-Probleme entstehen können.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Kuno60
Datum: 16.05.18 20:03

Hallo Manfred,

möglicherweise ist nicht nur die Datei beschädigt, sondern auch der Pfad.
Zitat:

Auch die Framework-Methode "System.IO.File.Delete" scheitert,
löst dabei aber keine Ausnahme aus (FW 4.6).
VB-spezifische Methoden wie z.B. "Kill" scheitern auch,
werfen aber eine (irreführende) Ausnahme: Datei nicht gefunden.

Das Framework löscht Dateien mit "DeleteFile" der "Kernel32.dll".
Diese Funktion würde wahrscheinlich auch den Fehler: FILE_NOT_FOUND liefern, denn dies ist der einzigste Fehler, der bei der Funktion "System.IO.File.Delete" unterdrückt wird.

"System.IO.File.Exists", liefert bestimmt False, oder?

Möglicherweise kann die Datei mit dem DOS-Befehl: DEL gelöscht werden.
Ich denke aber eher, das erst Checkdisk ausgeführt werden muss, damit die Dateizuordnung wieder hergestellt wird.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Net-Framework: Beschädigte Dateien löschen 
Autor: Manfred X
Datum: 17.05.18 07:46

Hallo!

Das ist schon klar.
Wenn ich mal Zeit dafür habe, suche ich nach einer Windows-API,
die geeignet ist, um auch die NTFS-Ausnahmen an Framework-
Anwendungen weiterzugeben.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel