![]() |
leeren Ordner mit RemoveDir löschen
Hallo!
Ich habe einen Ordner in meinem Startmenü (Start->Alle Programme) den ich mit RemoveDir löschen möchte. Ich mache das so: Ordner Leeren:
Delphi-Quellcode:
Ordner finden:
procedure TForm1.AlleDateienlöschen(Pfad:String);
var i:Integer; begin FileListBox1.Directory:=Pfad; if FileListBox1.Items.Count>0 then begin for i:=0 to FileListBox1.Items.Count-1 do begin DeleteFile(Pfad+'\'+FileListBox1.Items[0]); FileListBox1.Update; end; end; end;
Delphi-Quellcode:
Pfad stimmt, Ordner ist leer.
function TForm1.GetStartmenuePath: String;
var LPidl: PItemIDList; LPath: Array[0..MAX_PATH] of Char; begin if SUCCEEDED(SHGetSpecialFolderLocation(0, CSIDL_STARTMENU, LPidl)) then begin SHGetPathFromIDList(LPidl, @LPath); result := String(LPath); end else result := ''; end; So wird er gelöscht:
Delphi-Quellcode:
Obwohl der Ordner leer ist, wird er nicht gelöscht.
procedure TForm1.frdenaktuellenBenutzerentfernen1Click(Sender: TObject);
var Ordner:String; a:Integer; begin Ordner:=GetStartMenuePath; DirectoryListBox1.Directory:=Ordner; a:=DirectoryListBox1.Items.Count-1; Ordner:=DirectoryListBox1.GetItemPath(a); Ordner:=Ordner+'\Geburtstagskalender'; AlleDateienLöschen(Ordner); Showmessage(Ordner+'\'); if (RemoveDir(Ordner+'\')) then MessageDLG('Ordner erfolgreich gelöscht',mtInformation,[mbOK],0) else MessageDLG('Ordner konnte nicht gelöscht werden!',mtWarning,[mbOK],0); end; Woran kann das liegen? |
Re: leeren Ordner mit RemoveDir löschen
Vielleicht solltest du den Backslash bei RemoveDir wegmachen.
|
Re: leeren Ordner mit RemoveDir löschen
HAb ich als erstes gehabt, da hats auch net funktioniert.
Dann hab ich den Backslash hinzugefügt, dannach hats genau ein mal funktioniert.... Edit: habs grad nochmal ohne probiert, bring aber nichts. Wie gesagt, der Ordner wird geleert, aber nicht gelöscht |
Re: leeren Ordner mit RemoveDir löschen
Hat jemand ne Idee?
|
Re: leeren Ordner mit RemoveDir löschen
Zitat:
|
Re: leeren Ordner mit RemoveDir löschen
habs grad gefunden.
Es liegt an der Prozedur zum Datei Löschen. ICh hab jetzt einfach hinzugefügt, das wenn alle dateien gelöscht sind, das Verzeichnis auf das des Programmes selber gestellt wird. Jetzt funzt alles! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz