Hallo ich habe folgendes Problem!
Hier mein Quellcode um ein Verzeichnis zu löschen.
Delphi-Quellcode:
function DelDir(Dir :
String) : Boolean;
var FileOption : TSHFileOpStruct;
begin
ZeroMemory(@FileOption,SizeOf(FileOption));
with FileOption
do
begin
wFunc := FO_DELETE;
fFlags := FOF_SILENT
or FOF_NOCONFIRMATION;
pFrom := PChar(Dir + #0);
end;
Result := (ShFileOperation(FileOption) = 0);
end;
procedure deletehistory;
begin
deldir(GetSpecialFolder(
Handle,CSIDL_HISTORY));
CreateDir(GetSpecialFolder(
Handle,CSIDL_HISTORY));
end;
Eindows bringt darauf eine Fehlermeldung das ein Systemordner nicht gelöscht werden kann
Selbst nur den Inhalt löschen bringt nix
Habe dafür folgenden Code:
Delphi-Quellcode:
procedure DeleteAll(Dir, Files :
string);
var SearchRec : TSearchRec;
begin
if FindFirst(Dir+Files, faAnyFile, SearchRec) = 0
then begin
DeleteFile(SearchRec.
Name);
while FindNext(SearchRec) = 0
do
begin
DeleteFile(Dir + SearchRec.
Name);
end;
FindClose(SearchRec);
end;
end;
procedure historyinhalt;
begin
DeleteAll(GetSpecialFolder(
Handle,CSIDL_HISTORY,'
*.*');
end;
das muss doch irgendwie gehen
[edit=Christian Seehase]Delphi-Tags korrigiert. Mfg, Christian Seehase[/edit]