AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Betriebssysteme Ordner löschen: mit Win gehts nicht, mit Delphi schon ?
Thema durchsuchen
Ansicht
Themen-Optionen

Ordner löschen: mit Win gehts nicht, mit Delphi schon ?

Ein Thema von Helmi · begonnen am 1. Okt 2007 · letzter Beitrag vom 6. Okt 2007
 
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#1

Ordner löschen: mit Win gehts nicht, mit Delphi schon ?

  Alt 1. Okt 2007, 14:52
Hallo,

ich bin gerade total verwirrt.

Ich hatte mal eine Installation ausgeführt bei der leider der Windows-Installer Dateien entpackte und diese auf meiner externen Festplatte in einen Ornder zwischenparkte.
Soweit so gut, mein Problem war, dass ich diesen Ordner nicht mehr löschen konnte.

Mein Vista sagte, ich hätte nicht die Berechtigungen diesen zu löschen (trotz Admin-Rechten und ausgeschalteter Benutzerkontensteuerung oder wie das Ding heisst).

Letztens hatte ich diese Festplatte bei einem Freund und hab hatte ihm gebeten zu versuchen diesen Ordner zu löschen.
Er hat Win XP Pro. Auch Win XP hat sich geweigert. Er hatte dann noch ein Tune Up-Programm mit dem man Daten löschen kann.
Das hat dann soweit auch geklappt, bis auf einen Unterordner und dessen Dateien. Diese konnten nicht gelöscht werden und deswegen auch nicht der eigentliche Ordner.

Nun hatte ich zwar weniger Dateien, aber dieser Ordner war noch da.

Jetzt dacht ich mir ich könne ja mal probieren, diesen Ordner mit einem Code aus Delphi raus zu löschen.

Bei dsdt.info hab ich diesen Code gefunden:

Delphi-Quellcode:
uses ShellAPI;

function DeleteFile(const AFile: string): boolean;
var
 sh: SHFileOpStruct;
begin
 ZeroMemory(@sh, sizeof(sh));
 with sh do
   begin
   Wnd := Application.Handle;
   wFunc := fo_Delete;
   pFrom := PChar(AFile +#0);
   fFlags := fof_Silent or fof_NoConfirmation;
   end;
 result := SHFileOperation(sh) = 0;
end;
Da dieser Code die ShellAPI verwendet, dacht ich mir es könne ja nicht funktionieren, da ja Windows mit die Finger im Spiel hat.

ABER: Ich kann es nicht fassen. Ich bekam ein true von dieser Funktion und bei einem Blick auf die Festplatte: Der Ordner ist verschwunden, weg, away, verflogen,... - einfach nicht mehr da.

Nun wieder zu meiner Verwirrtheit:
Wieso konnt ich den mit dem oberen Code löschen, aber über Windoofs nicht?
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz