Einzelnen Beitrag anzeigen

CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#5
  Alt 20. Mär 2003, 14:53
Hi,
ich bitte dich dein Code absofort in [ delphi] [ /delphi] einzupacken (ohne die Leerzeichen). Danke.
Ich habe deinen Source einwenig verändert:
Delphi-Quellcode:
uses
{...} ,ShellAPI;

var
  Form1: TForm1;

function DelDir(dir: string): Boolean;
var
  fos: TSHFileOpStruct;
begin
  ZeroMemory(@fos, SizeOf(fos));
  with fos do begin
    wFunc := FO_DELETE;
// fFlags := FOF_SILENT or FOF_NOCONFIRMATION;
// nimm das mal heraus, um zu sehen, was er dir ausgibt
    pFrom := PChar(dir + #0#0);
  end;
  Result := (0 = ShFileOperation(fos));
end;

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
    DeleteFile(Dir + SearchRec.Name);
  end;
  FindClose(SearchRec);
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  dir : string;
begin
// DelDir(dir); ? Was machst du denn hier ? dir ist noch leer!!
  dir := 'C:\Windows\Temp\'; // sicher, dass es nicht "C:\WINDOWS\..." ist?
  DelDir(dir);
  DeleteAll(dir, '*.*' );
// RemoveDir(dir); Hast du doch schon einmal gemacht... :?
end;
Änder das mal und sage uns mal was ausgegeben wird...
Desweiteren: such mal in der CodeLibrary nach "DoFileWork". Die Funktion von sakura kann das ganz gut und macht auch keine Probleme...

Chris
  Mit Zitat antworten Zitat