Registriert seit: 18. Apr 2003
1.037 Beiträge
|
FileOpen & Co.
30. Dez 2003, 17:09
Hallo
Code:
procedure DestroyFile(fFile: String);
var vFile: THandle;
vNothing: Byte;
vPosition: Cardinal;
vFileSize: Cardinal;
vEmpty: LongWord;
begin
vPosition:=0;
vFileSize:=GetFileSize(fFile);
if vFileSize = 0 then
exit;
vFile := Integer(CreateFile(PChar(fFile), GENERIC_WRITE, FILE_SHARE_WRITE, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0));
try
while vPosition < vFileSize do
begin
vNothing := Random( 256 );
WriteFile(vFile, vNothing, SizeOf(vNothing), vEmpty, nil);
Inc( vPosition );
SetFilePointer(vFile, 0, nil, vPosition);
end;
finally
CloseHandle(vFile);
end;
end;
Dieser Code soll eigentlich jedes Byte einer Datei durch ein Zufallsbyte ersetzen, tut er arber nicht. Woren könnte das liegen?
Onz
"Optimistisch ist diejenige Weltanschauung, die das Sein höher als das Nichts stellt und so die Welt und das Leben als etwas an sich Wertvolles bejaht."
Albert Schweitzer
|
|
Zitat
|