Selektierten Listeneintrag auf einen FTP Server umbenennen

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 790
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Winux (L 2.0.11 FPC 3.2)
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Selektierten Listeneintrag umbenennen

Beitrag von fliegermichl »

reiter hat geschrieben:Ich weiß ja nicht was jeder Benutzer für Filme auf sein NAS oder FTP Server hat.


Ja natürlich nicht.
Im ersten Schritt musst due die vorhandenen Dateinamen einlesen. (egal ob lokal oder entfernt über FTP)
Im zweiten Schritt werden diese in die ListView eingetragen.

Verwende dafür die demo von wp_xyz.

Wenn der Anwender einen Eintrag auswählt, <F2> drückt und einen neuen Namen eingegeben und <Enter> gedrückt hat, wird das Ereignis OnEdited ausgeführt.
Diese Methode hat u.a. den Parameter Item. Item.Caption beinhaltet den alten Dateinamen und AValue den neuen.

Damit kannst due nun die Umbenennung der Datei ausführen.

Gruß
Michael

reiter
Beiträge: 215
Registriert: Sa 18. Nov 2017, 16:58

Re: Selektierten Listeneintrag umbenennen

Beitrag von reiter »

Hallo Michael ..
Danke , werde ich mir nochmal genauer ansehen..
Wie macht das z.b. Ein Programm wie filezilla oder total Commander da kann man ja auch auch Dateien auf dem Server umbenennen,verschieben,usw
Das Problem : einfach nur im Programm ändern zur Laufzeit geht nicht, weil ich die umbenannten Dateien ja dann den vlc übergeben will der sie dann aber nicht mehr abspielt.

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 790
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Winux (L 2.0.11 FPC 3.2)
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Selektierten Listeneintrag umbenennen

Beitrag von fliegermichl »

Die FTP Komponenten haben eine Methode Rename(OldFile, NewFile). Damit wird die Datei remote umbenannt.

reiter
Beiträge: 215
Registriert: Sa 18. Nov 2017, 16:58

Re: Selektierten Listeneintrag umbenennen

Beitrag von reiter »

Ja das hab ich ja im ersten Beitrag schon angemerkt.. was meine Frage war..
Ich kann aber nicht das schon im Programm fest definieren das ist mein Problem
Ich weiß doch garnicht wie der Titel heißt...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 4442
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Niederösterreich
Kontaktdaten:

Re: Selektierten Listeneintrag umbenennen

Beitrag von af0815 »

Wie wäre es, wenn du dir die Infos einmal holst.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2349
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Selektierten Listeneintrag umbenennen

Beitrag von m.fuchs »

Ich verstehe nach dem Lesen immer noch nicht, was die eigentlich Problemstellung ist. Geht es nun um das Ändern eines Listeneintrags innerhalb eine GUI, sollen Dateien in einem Verzeichnis umbenannt werden, sollen Dateien per FTP umbenannt werden?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

reiter
Beiträge: 215
Registriert: Sa 18. Nov 2017, 16:58

Re: Selektierten Listeneintrag umbenennen

Beitrag von reiter »

In dem Fall soll es die Möglichkeit geben Dateien per ftp umbenannt zu werden..

shokwave
Beiträge: 438
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win10 (L 1.6 FPC 3.0.0)
CPU-Target: i386,x64
Wohnort: Rudolstadt

Re: Selektierten Listeneintrag umbenennen

Beitrag von shokwave »

reiter hat geschrieben:Ja das hab ich ja im ersten Beitrag schon angemerkt.. was meine Frage war..
Ich kann aber nicht das schon im Programm fest definieren das ist mein Problem
Ich weiß doch garnicht wie der Titel heißt...


Hallo Reiter,

das wurde eigentlich schon von fliegermichel beantwortet.

Du musst das ja auch gar nicht wissen, sondern dein Programm. :D
Dazu muss dein Programm beim Start erst mal die Dateinamen einlesen und in die ListView eintragen.
Wenn dann der User den Namen in der ListView ändert, muss dein Programm dafür sorgen, dass es sich entweder den neuen und alten Namen merkt (und den alten/tatsächlichen Namen an VLC übergibt) oder den Namen der Datei ändern. Je nachdem was dir lieber ist, wobei ich die 2. Variante bevorzugen würde, da es zu weniger Verwirrung führt.

Wie liest du denn im Moment die Dateinamen ein? Ein bisschen Code wäre auch hilfreich, damit man sieht wo es hackt...
mfg Ingo

reiter
Beiträge: 215
Registriert: Sa 18. Nov 2017, 16:58

Re: Selektierten Listeneintrag umbenennen

Beitrag von reiter »

Es soll ja der Titel umbenannt werden wenn der vlc den alten Namen nicht lesen kann, darum wollte ich eine Möglichkeit einbauen den Titel zu ändern auf dem ftp damit der vlc dann den neuen Titel liest...der an den vlc übergeben wurde...
Ich kann das ja eigentlich auch über filezilla auf dem ftp ändern , aber das wäre wieder ein zusätzliches Programm was ich Öffnen müsste um den Titel zu ändern , dann die Liste in meinem neu einlesen und an den vlc übergeben... nun wollte ich das eigentlich so das ich das gleich in meinen Programm ändere , da die Liste eh vom ftp eingelesen wird und ich nicht noch ein zusätzliches Programm zum ändern / umbenennen brauche
Mit dem Code muss ich noch schauen bin nicht am PC
Und das ist eine listbox was ich da habe keine listview

Ich wusste nicht das es solche Unterschiede macht wie,was wo, wann
Im Grunde sollte es so funktionieren als wenn ich wie in filezilla eine Datei umbenenne
Nicht mehr nicht weniger
Und das in einer listbox

shokwave
Beiträge: 438
Registriert: Do 15. Nov 2007, 16:58
OS, Lazarus, FPC: Win10 (L 1.6 FPC 3.0.0)
CPU-Target: i386,x64
Wohnort: Rudolstadt

Re: Selektierten Listeneintrag umbenennen

Beitrag von shokwave »

Gut gut, eine Listbox. Macht auch nicht den Unterschied. Dann musst du nur einen Dialog bauen, wo der User den neuen Titel eingeben kann.

Der "Titel" ist der Dateiname. Und wie fliegermichel schon schrieb, gibt es dafür die Methode "rename" bei den meisten FTP-Komponenten.
Welche FTP-Komponente benutzt du denn, um die Dateinamen einzulesen?

Der Ablauf wäre dann:
- alten Dateinamen merken
- Dialog aufrufen
- Text in der Listbox ändern und Dateiname per FTP.rename ändern

Alternative zum letzten Punkt: Dateiname per FTP.rename ändern und Liste neu einlesen
mfg Ingo

reiter
Beiträge: 215
Registriert: Sa 18. Nov 2017, 16:58

Re: Selektierten Listeneintrag umbenennen

Beitrag von reiter »

Ok danke, werde mal versuchen das umzusetzen
Danke für den Hinweis ftp.rename

Antworten