Die Probleme bleiben aber noch:
Delphi-Quellcode:
procedure TForm3.EditBuchClick(Sender: TObject);
var f, g, s, t : String;
begin
s := ListBox1.Items[ListBox1.ItemIndex];
t := InputBox('Buch ändern', s, '');
if t <> '' then
if MessageDlg(s + ' zu ' + t + ' ändern?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
f := 'C:\Program Files\Vokabeltrainer XXL\' + t;
g := 'C:\Program Files\Vokabeltrainer XXL\' + s;
RenameFile(g, f);
Form3.FormActivate(Form3);
end;
end;
Beispiel:
Das markierte "Buch" hat den Namen 'Buch 1' - dies ist ein Ordner ('C:\Program Files\Vokabeltrainer XXL\Buch 1') Da 'Buch 1' als
s mit dem Pfad ausgestattet wird und da der neue Name (durch InputBox) auch mit dem Pfad versehen wird, müsste die Umbenennung (RenameFile) doch funktionieren, oder? Tut es aber nicht! Form3.FormActivate(Form3) ist eine Prozedur, die den ListBox auf den neusten Stand bringt...
Problem 2:
Delphi-Quellcode:
procedure TForm3.DelBuchClick(Sender: TObject);
var s : String;
begin
s := ListBox1.Items[ListBox1.ItemIndex];
if MessageDlg('Wollen Sie ' + s + ' wirklich löschen?', mtWarning, [mbYes, mbNo], 0) = mrYes then
begin
s := 'C:\Program Files\Vokabeltrainer XXL\' + s;
RemoveDir(s);
end;
Form3.FormActivate(Form3);
end;
Beispiel wie vorhin:
Das markierte "Buch" hat den Namen 'Buch 1' - dies ist ein Ordner ('C:\Program Files\Vokabeltrainer XXL\Buch 1') Da 'Buch 1' als
s mit dem Pfad ausgestattet wird sollte sie doch gelöscht werden können, oder? Tut es aber nicht! Find-Befehle zu benutzen um die darin zu löschenden Dateien und Ordner zu finden ist mir zu unständlich, da ich für jeden Ordner im Ordner im Ordner im Ordner ................ wiederum Find-Befehle zu schreiben ist viel zu viel!!!
Wieso werden die Ordner nicht umbenannt?
Wieso wird sogar ein leerer Ordner nicht gelöscht?
Wie kann ich einen ganzen Verzeichnis löschen, ohne endlos lange Quellentexte zu schreiben?