Hallo,
Ich suche Jetzt schon über eine Stunde bei Google und finde einfach nichts! Ist bestimmt ganz einfach, weil ich will eigentlich nur feststellen ob eine Festplatte, Externe Festplatte, oder USB Stick schreibgeschützt ist oder nicht!
Dabei will ich nicht feststellen, ob jede einzelne Datei vom Windows aus als Schreibgeschützt markiert wurde, noch will ich Irgendwelche Schreibrechte setzen!
Ich beziehe mich eher darauf das ein USB Stick / Externe Festplatte via Externem Schreibschutz Schalter Schreibgeschützt gestellt wird bzw. Das ein gemountetes Laufwerk via TrueCrypt (Verschlüsselungsprog) ebenfalls Schreibgeschützt ist oder nicht!
Bei google hab ich NUR dieses script gefunden!
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| function check_hdd_if_readable(dev: string): Boolean; var hFile: THandle; FileName: string; begin Randomize; FileName := Format(PChar(dev + 'tmp_EZ_%d.txt'), [Random(High(Integer))]); hFile := CreateFile(PChar(FileName), GENERIC_WRITE, FILE_SHARE_WRITE, nil, OPEN_ALWAYS, 0, 0); if (hFile <> INVALID_HANDLE_VALUE) then begin result := true; CloseHandle(hFile); DeleteFile(FileName); end else result := false; end; |
Ansich nicht schlecht, denn es wird versucht eine Datei auf die HDD / Stick zu schreiben, wenn das nicht geht, dann muss wohl der Datenträger schreibgeschützt sein!
Allerdings funktioniert das ganze nicht richtig! Denn wenn Windows wieder mit seinen Benutzerrechten alles durcheinander bringt, liefert diese möglichkeit auch false Also Datenträger Schreibgeschützt, selbst wenn ich über den Explorer dateien draufkopieren kann!
Gibt es dafür denn keine Einfache Funktionsfähige von Delphi schon integrierte Funktion die einfach nur überprüft, Datenträger Schreibgeschützt, JA oder NEIN!
Währe dankbar über eine Antwort!