Hallo,
kann mir wohl jemand helfen? Ich muss diverse Verzeichnisse löschen, deren Einträge ich aus der Registry auslesen muss und in einem Label (lbDatabase.Caption) darstellen will. Alle Verzeichniseinträge enden allerdings mit einem \ so dass es beim Ausführen des Programms zu einer Fehlermeldung kommt ("Datei kann nicht gelöscht werden: Die Quelldatei oder vom Quelldatenträger kann nicht gelesen werden").
<pre>
uses ShellAPI;
procedure TForm1.DelDBVerz(Sender: TObject);
var
aSHFOS : TSHFileOpStruct;
szFrom : array[0..128] of Char;
begin
try {Vz. Database löschen}
// Puffervariablen initialisieren (Doppel-Null!)
FillChar(aSHFOS, Sizeof(aSHFOS), #0);
FillChar(szFrom, Sizeof(szFrom), #0);
// Zu löschendes Verzeichnis definieren
StrPCopy(szFrom, ''+lbDatabase.Caption+'');
with aSHFOS do
begin
Wnd := Handle;
wFunc := FO_DELETE;
pFrom := @szFrom;
fFlags := FOF_NOCONFIRMATION or FOF_ALLOWUNDO;
fAnyOperationsAborted := True;
end;
ShFileOperation(aSHFOS);
ok1.Visible := True;
except
exit;
end;
end;
</pre>
Gruß
Peter
kann mir wohl jemand helfen? Ich muss diverse Verzeichnisse löschen, deren Einträge ich aus der Registry auslesen muss und in einem Label (lbDatabase.Caption) darstellen will. Alle Verzeichniseinträge enden allerdings mit einem \ so dass es beim Ausführen des Programms zu einer Fehlermeldung kommt ("Datei kann nicht gelöscht werden: Die Quelldatei oder vom Quelldatenträger kann nicht gelesen werden").
<pre>
uses ShellAPI;
procedure TForm1.DelDBVerz(Sender: TObject);
var
aSHFOS : TSHFileOpStruct;
szFrom : array[0..128] of Char;
begin
try {Vz. Database löschen}
// Puffervariablen initialisieren (Doppel-Null!)
FillChar(aSHFOS, Sizeof(aSHFOS), #0);
FillChar(szFrom, Sizeof(szFrom), #0);
// Zu löschendes Verzeichnis definieren
StrPCopy(szFrom, ''+lbDatabase.Caption+'');
with aSHFOS do
begin
Wnd := Handle;
wFunc := FO_DELETE;
pFrom := @szFrom;
fFlags := FOF_NOCONFIRMATION or FOF_ALLOWUNDO;
fAnyOperationsAborted := True;
end;
ShFileOperation(aSHFOS);
ok1.Visible := True;
except
exit;
end;
end;
</pre>
Gruß
Peter
Comment