Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Im FTP-Verbinden dialog schreibn (https://www.delphipraxis.net/127338-im-ftp-verbinden-dialog-schreibn.html)

Sir K 11. Jan 2009 16:17


Im FTP-Verbinden dialog schreibn
 
Ich möchte in dem Dialog zu Herstellung einer Verbindung mit einem FTP-Server in die Editfelder den ensprechenden benutzername unddas enstprechende Kennwort eintragen.

Meine Frage ist jetzt wie ich das anstelle?

Lg
Sir K

Klaus01 11. Jan 2009 17:42

Re: Im FTP-Verbinden dialog schreibn
 
Hallo Sir K,

meinst Du so etwas?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  idftp1.Username:=edit1.Text;
  idftp1.Password:=edit2.Text;
  idftp1.Host:='deinFtpServer';
  idftp1.Connect();
end;
Grüße
Klaus

Sir K 11. Jan 2009 17:52

Re: Im FTP-Verbinden dialog schreibn
 
ähm nein mit idFTP bringt das ja nur etwas wenn man dann auhc ausschkießlich damit arbeitet. Möchte ihc jetzt z.B mit dem Windows Explorer auf den Server zugreifen kommt ja nochmal génau dieser dialog den ich meine xD

Gruß
Sir K

mjustin 11. Jan 2009 18:36

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von Sir K
ähm nein mit idFTP bringt das ja nur etwas wenn man dann auhc ausschkießlich damit arbeitet. Möchte ihc jetzt z.B mit dem Windows Explorer auf den Server zugreifen kommt ja nochmal génau dieser dialog den ich meine xD

Gruß
Sir K

Einfach username und password in der URL angeben:

Code:
ftp://ftp_username:ftp_PWD@Servername
z.B. in einer Konsole mit

Code:
explorer [url]ftp://ftp_username:ftp_PWD@Servername[/url]
oder

Code:
start [url]ftp://ftp_username:ftp_PWD@Servername[/url]
Quelle: http://de.wikipedia.org/wiki/File_Transfer_Protocol

SirThornberry 11. Jan 2009 19:04

Re: Im FTP-Verbinden dialog schreibn
 
Problematisch wird es wenn ein ":" oder "@" im Benutzernamen oder Passwort vorkommen.

mjustin 11. Jan 2009 19:13

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von SirThornberry
Problematisch wird es wenn ein ":" oder "@" im Benutzernamen oder Passwort vorkommen.

Nur wenn man http://de.wikipedia.org/wiki/URL-Kodierung noch nicht gelesen hat ;)

Sir K 12. Jan 2009 15:10

Re: Im FTP-Verbinden dialog schreibn
 
also klar mit dieser Art (also ftp://User:Password@Host) geht das auch aber dann hat man den Nachteil dass es unglaublich langsam ist...
deswegen wollte ich eig mit hilfe eines kleinen Programms aus eine Verbindung mit einem ftp-server herstellen(die Zugangsdaten des jeweiligen Servers werden einfach aus einem txt-file geladen, und das entsprechende "Profil" lässt sich am Anfang wählen). Das ist ja alles kein Problem mit idFTP kann man dann grad noch auf dem Server arbeiten und zur Navigation hab ich n ShellListView genommen... ja ich weis das ist eig keine geeignete Komponente aber ich hab mir das mithilfe von zwei kleinen Funktionen sop zurecht gelegt dass das damit 1a geht xD

Das Einzige was noch nicht klappt ist eben wenn dieses ShellListView in das Verzeichnis des FTP-Servers springen soll, dann wird wie gesagt dieser Dialog noch aufgerufen und mann muss sich nochmal so anmelden. Deswegen wollte ich diese beiden editfelder einfach mit den Werten von idFTP1.Username und /.Password füllen und dann einen Klick auf den "OK"-Button simulieren...

Ich hoffe das euch jetzt klarer ist was mein Problem ist (hät ich wohl von Anfang an so deutlich beschreiben sollen) :-)

Gruß
Sir K

Sir Rufo 12. Jan 2009 16:00

Re: Im FTP-Verbinden dialog schreibn
 
Versuch mal mit:
Delphi-Quellcode:
IdFTP.AutoLogin := True;
und natürlich auch Benutzername und Kennwort vorher setzen ;)

Sir K 12. Jan 2009 16:12

Re: Im FTP-Verbinden dialog schreibn
 
also der Dialog wird immer noch geöffnet...
Delphi-Quellcode:
idFTP1.Username:='thorsten';
idFTP1.Host:='speedport.ip';
idFTP1.Password:='*****';
idFTP1.Connect;
idFTP1.AutoLogin:=true;
ShellListView1.Root:='\\speedport.ip';
Gruß
Sir K

Sir Rufo 12. Jan 2009 16:45

Re: Im FTP-Verbinden dialog schreibn
 
äh, wäre es nicht besser vor dem Verbinden (Connect) AutoLogin auf True zu setzen ;)

Sir K 12. Jan 2009 16:59

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von Sir Rufo
äh, wäre es nicht besser vor dem Verbinden (Connect) AutoLogin auf True zu setzen ;)

..hm ändert leider auch nichts

mjustin 12. Jan 2009 17:26

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von Sir K
Zitat:

Zitat von Sir Rufo
äh, wäre es nicht besser vor dem Verbinden (Connect) AutoLogin auf True zu setzen ;)

..hm ändert leider auch nichts

Verständlich, da das ShellListView nichts von der IdFTP Komponente weiss, auch nicht Benutzername / Passwort. Der Passwortdialog, der erscheint, ist ja vermutlich der des (Internet) Explorers.

Es könnte aber auch - je nach Systemkonfiguration - ein FTP-Password-Dialog von Opera, Mozilla, Chrome, FileZilla, ... usw. sein. Die Fenster, in denen man dann programmatisch etwas eintragen will, unterscheiden sich da sicher zwischen den verschiedenen Browsern.

Die Universallösung gibt es daher wohl nicht, notfalls gibt es ja die 'klassische' Möglichkeit simulierter Eingaben und Mausklicks in anderen Fenstern über die Windows API.

Sir K 12. Jan 2009 17:47

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von mjustin

Die Universallösung gibt es daher wohl nicht, notfalls gibt es ja die 'klassische' Möglichkeit simulierter Eingaben und Mausklicks in anderen Fenstern über die Windows API.

ja hab auch schon mit der idee gespielt die Tastendrücke in disem Dialog zu simulieren... ist nur daran gescheitert dass ich nicht wirklich genau weis wie das geht. Wenn ich mich recht entsinne geht das mit FindWindow und SendMessage, oder?

kennt da vlt einer n anschauliches Beispiel?

Lg
Sir K

Klaus01 12. Jan 2009 19:42

Re: Im FTP-Verbinden dialog schreibn
 
Hallo Sir K,

musst Du auf der ShellListView Komponente aufsetzen?
Bau Dir doch eine eigene bzw. nutze die ShellView oder TreeView
Komponente und füll sie mit den Daten vom FTP Server.
Dann hast Du das ganze login Gedöns in Deinen Händen.

Grüße
Klaus

Sir K 12. Jan 2009 19:54

Re: Im FTP-Verbinden dialog schreibn
 
...ich hab was gefunden was wie für mich gemacht ist xDD
nur ich weis nicht was ich machen muss damit ich das benutzen kann^^

http://www.koders.com/delphi/fidFE27...s=password#L47

mjustin 12. Jan 2009 21:07

Re: Im FTP-Verbinden dialog schreibn
 
Zitat:

Zitat von Sir K
...ich hab was gefunden was wie für mich gemacht ist xDD
nur ich weis nicht was ich machen muss damit ich das benutzen kann^^

http://www.koders.com/delphi/fidFE27...s=password#L47

Ich habe mir mal die uses Liste angesehen:

Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Classes, Controls, ComCtrls, cvs, ShellAPI,
  Graphics, Dialogs;
Das "cvs" sieht beunruhigend aus. Wenn man alles wegläßt, was sich auf CVS bezieht wie z.B.

Delphi-Quellcode:
cvsinfo := TCVSModuleInfo.Create;
dann bleibt nur noch ein nach mehreren Spalten sortierbares, ansonsten aber funktionsarmes, ListView übrig. Also ich würde sagen, der Link führt in die Irre, bestenfalls nicht zum Ziel. :!:

Sir K 12. Jan 2009 21:14

Re: Im FTP-Verbinden dialog schreibn
 
hm wenn das so ist^^ kennst du irgend ein ListView das sich besser eignet?

Gruß
Sir K

jfheins 12. Jan 2009 21:22

Re: Im FTP-Verbinden dialog schreibn
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich hab die Jedi TJvListView genommen, als ich damlas mein FTP-Programm geproggt habe ;)

Anbei mal die "Kernkomponente" - funktioniert aber nicht 100%ig ...

Sir K 12. Jan 2009 21:26

Re: Im FTP-Verbinden dialog schreibn
 
...haste nen link wo ich die JEDI library downloaden kann?

jfheins 12. Jan 2009 21:28

Re: Im FTP-Verbinden dialog schreibn
 
http://jvcl.sourceforge.net/daily/ & http://jcl.sourceforge.net/daily/ ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:17 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-2025 by Thomas Breitkreuz