trm - Di 28.06.11 14:57
Titel: Errrormessage bei shfileoperation
Huhu.
Wenn ich eine Dateioperation in Form eines Kopierprozesses auf einen Datenträger mache, kommt folgender Fehlercode: 124
Dies wird im msdn (
http://msdn.microsoft.com/en-us/library/bb762164%28v=vs.85%29.aspx ) als "DE_INVALIDFILES * 0x7C * The path in the source or destination or both was invalid." bezeichnet.
Aber dieser Fehler tritt auf, wenn der Datenträger voll ist, die Datei also nicht kopiert wird.
Wenn ich unter DOS (früher) Dateien auf eine Diskette kopiert habe, wurde bei wenig Platz auf Derselben, dies mitgeteilt.
Warum geht das unter Windows (ab XP) nicht mehr definitiv, sondern nur noch mit so einer undeutlichen Aussage?
Und kann ich denn nicht feststellen, ob der Zieldatenträger eine Kopieraktion nicht zuläßt, weil er voll ist - einen entsprechenden Fehlercode finde ich bei Microsoft nicht.
Nebenbei, die korrekte Übersetzung laut Delphi7 für Errorcode 127 ($7c) lautet: Die Ebene des Systemaufrufs ist falsch.
Unfassbar.
Viele Grüße
~Mathias
Edit: RS behoben.
jaenicke - Di 28.06.11 16:03
trm hat folgendes geschrieben : |
Wenn ich unter DOS (früher) Dateien auf eine Diskette kopiert habe, wurde bei wenig Platz auf Derselben, dies mitgeteilt.
Warum geht das unter Windows (ab XP) nicht mehr definitiv, sondern nur noch mit so einer undeutlichen Aussage? |
Geht es, der Dialog, den Windows als Fehler anzeigt, enthält diese Information für den Benutzer.
Wenn du auf Silent schaltest, heißt das für das System, dass es dir genügt am Ende das Ergebnis mitgeteilt zu bekommen (geklappt oder nicht). Diese Information steckt auch noch einmal in der übergebenen Struktur drin. Die angegebenen Rückgabewerte sind
nicht dafür gedacht dem Benutzer als Fehleranzeige angezeigt zu werden.
trm hat folgendes geschrieben : |
| Nebenbei, die korrekte Übersetzung laut Delphi7 für Errorcode 127 ($7c) lautet: Die Ebene des Systemaufrufs ist falsch. |
Das ist korrekt. Der
Systemfehlercode 124 hat diese Bedeutung.
Die Rückgabewerte von SHFileOperation haben aber rein gar nichts mit den Systemfehlercodes zu tun. Diese Rückgabewerte sind ausschließlich zum Debuggen gedacht, zu mehr nicht. :nixweiss: