Chcę, aby mój program miał funkcję nadpisywania pustych miejsc na dysku ciągami zer (lub innych znaków), aby permanentnie uniemożliwić odczytanie usuniętych informacji. Jak to zrobić?
Jak znaleźć puste klastry to Ci nie powiem, ale jak chcesz z nich całkiem usunąć informacje, to musisz zapisać kilkanaście razy na zmiane "00000000" i "11111111" ... tak mi sie wydaje.. :]
Jak znaleźć puste klastry to Ci nie powiem, ale jak chcesz z nich całkiem usunąć informacje, to musisz zapisać kilkanaście razy na zmiane "00000000" i "11111111" ... tak mi sie wydaje.. :]
To wiem, ale jak się dostać do tych klastrów? Najbardziej wdzięczny byłbym za podanie przykładu gotowej procedury lub linka do takowej.
Po co schodzic na tak niski poziom skoro mozna po prostu nadpisac kilka razy plik, ktory chcesz usunac.
Po co schodzic na tak niski poziom skoro mozna po prostu nadpisac kilka razy plik, ktory chcesz usunac.
@Wolverine - albo ja nie rozumiem o co chodzi albo Ty....
[do postu poniżej]
Acha... teraz kapuje, czyli jednak ja zrozumiałem ale nie do końca ;)
Jesli program ma usuwac konkretny plik to lepiej skorzystac z funkcji systemu plikow, niz samemu sie do tego dobierac (czego w delphi pewnie sie nawet nie zrobi). Inna sprawa jesli chodzi o 'usuniecie plikow, ktorych nie ma (zostaly wczesniej usuniete)'
Inna sprawa jesli chodzi o 'usuniecie plikow, ktorych nie ma (zostaly wczesniej usuniete)'
Tu też warto zdać sie na system: stworzyć plik i wypełnic nim dysk do pełna.
Tu też warto zdać sie na system: stworzyć plik i wypełnic nim dysk do pełna.
Hmm - nie wiem czy to miałoby sens .. - po pierwsze trzeba by było później skasować ten nowo utworzony plik - aby uzyskać wolne miejsce (w końcu nie chodzi o to aby zapchać dysk..) a na dodatek plik ten musiałby tworzyć się dokładnie w tym miejscu, w którym chcemy wyczyścić. Trochę to naciągane..
... a na dodatek plik ten musiałby tworzyć się dokładnie w tym miejscu, w którym chcemy wyczyścić.
Jak stworzysz plik na całości wolnego miejsca, to będzie też w miejscu, które chcemy wyczyścić. :)
Taak, super :)
A mam dysk 180GB, a chce nadpisac plik 500B ;]
Można by ewentualnie obejsc kasowanie pliku przez system, lub poprzedzic je otworzeniem pliku, zapisaniem zerami (lub czym kolwiek) i zamknac, a nastepnie pozwolic systemowi go skasowac lub wywolac kaswoanie.
Taak, super :)
A mam dysk 180GB, a chce nadpisac plik 500B ;]
To nadpisz sam plik. W wątku mowa o zamazywaniu pustych miejsc na dysku.
jak komuś zależy na zatrzeniu śladów to poczeka :)
Jak to zrobić z poziomu delphi, to ???
Ale jest taki mały programik konsolowy na www.sysinternals.com
do kasowania z nadpisywaniem i nadpisywania FREESPACE'a...
Można by do tego nakładkę w delpiku zrobić...
Tak, ale coś takiego nie załatwi sprawy. Natomiast z Delphi się tak nie da, ba w ogóle się tak nie da, zakładając, że korzystamy z Windowsów. Po prostu nie pozwalają na niskopoziomowy dostęp do dysku. Natomiast z DOS'a potrafił to zrobić diskedit, ale z partycjami NTFS byłby problem... Właściwie z FAT32 również...