FTP aber wie
FTP aber wie
Kann das sein das die Internet-Befehle nicht so gut hinterlegt sind wie der Rest? Ich möchte meinen Windows-Rechner über ein Netzwerk mit einem Linux-Rechner mit FTP verbinden, das Verzeichnis wechseln, und dort Dateien lesen. Das Problem dabei ist das ich wiedermal keine Ahnung.
Wir leben alle unter dem gleichen Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.
Re: FTP aber wie
> Das Problem dabei ist das ich wiedermal keine Ahnung.
das ist kein Problem! Das Problem ist, dass Du die Suchfunktionalität dieses
Boards unterschätzt.
Such mal nach FTP und Du findest eine Menge an Infos.
Grüße ... Kiffi
das ist kein Problem! Das Problem ist, dass Du die Suchfunktionalität dieses
Boards unterschätzt.

Such mal nach FTP und Du findest eine Menge an Infos.
Grüße ... Kiffi
a²+b²=mc²
Nun gut ich habs probiert, bekomm auch ne Verbindung hin, aber wie ich das Verzeichnis wechsel und ne Textdatei öffnen kann weis ich immer noch nicht. Hab heute morgen intensiv gegoogelt und versucht hier im Archiv was zu finden, aber da versteh ich nicht unbedingt alles.
Wir leben alle unter dem gleichen Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.
@dietmar
wenn es dir nichts ausmacht die WinINet befehle des internet explorers zu verwenden, kannst du es so machen:
der code stammt von paul leischow aus dem englischen forum und funktioniert auf jedem windows system ab win95 oder höher, sofern internet explorer 3 oder höher installiert ist. seine prozeduren sind nicht perfekt, der feinschliff fehlt (z.b. error handling und die abfrage, dass die daten auch wirklich angekommen sind), aber für das erste reichts.
ansonsten kannst du über die internen pb netzwerk befehle dein ftp zugriff selber basteln. da hilft dir vielleicht dieser link weiter http://forums.purebasic.com/english/vie ... hp?t=12656 (leider englisch)
hoffe es hilft dir weiter, wenn nicht einfach nochmal fragen.
c ya,
nco2k
wenn es dir nichts ausmacht die WinINet befehle des internet explorers zu verwenden, kannst du es so machen:
Code: Alles auswählen
Procedure.l FTPInit()
ProcedureReturn InternetOpen_("FTP",1,"","",0)
EndProcedure
Procedure.l FTPConnect(hInternet,Server.s,User.s,Password.s,Port.l)
ProcedureReturn InternetConnect_(hInternet,Server,Port,User,Password,1,0,0)
EndProcedure
Procedure.l FTPDir(hConnect.l)
hFind=FtpFindFirstFile_(hConnect,"*.*",@FTPFile.WIN32_FIND_DATA,0,0)
If hFind
Find=1
Debug PeekS(@FTPFile\cFileName)
While Find
Find=InternetFindNextFile_(hFind,@FTPFile)
If Find
Debug PeekS(@FTPFile\cFileName)
EndIf
Wend
EndIf
EndProcedure
Procedure.l FTPSetDir(hConnect.l,Dir.s)
ProcedureReturn FtpSetCurrentDirectory_(hConnect,Dir)
EndProcedure
Procedure.l FTPCreateDir(hConnect.l,Dir.s)
ProcedureReturn FTPCreateDirectory_(hConnect,Dir)
EndProcedure
Procedure.l FTPDownload(hConnect.l,Source.s,Dest.s)
ProcedureReturn FTPGetFile_(hConnect,Source,Dest,0,0,0,0)
EndProcedure
Procedure.l FTPUpload(hConnect.l,Source.s,Dest.s)
ProcedureReturn FTPPutFile_(hConnect,Source,Dest,0,0)
EndProcedure
Procedure.l FTPClose(hInternet.l)
ProcedureReturn InternetCloseHandle_(hInternet)
EndProcedure
;--------------------
hInternet=FTPInit()
If hInternet
hConnect=FTPConnect(hInternet,"ftp.reelmediaproductions.com","guest","guest",21)
If hConnect
FTPSetDir(hConnect,"test/")
FTPDir(hConnect)
FTPDownload(hConnect,"hello.txt","C:\download.txt")
FTPUpload(hConnect,"C:\Download.txt","download.txt")
FTPClose(hInternet)
EndIf
EndIf
End
ansonsten kannst du über die internen pb netzwerk befehle dein ftp zugriff selber basteln. da hilft dir vielleicht dieser link weiter http://forums.purebasic.com/english/vie ... hp?t=12656 (leider englisch)
hoffe es hilft dir weiter, wenn nicht einfach nochmal fragen.

c ya,
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Nein denn den Code hab ich ehrlich gesagt im Archiv gefunden und auf meine Bedürfnisse zu geschnitten, soweit ich verstanden hab um was es dort geht. Mein Problem ist wie ich das Ftp Verzeichnis wechseln kann oder die Frage die sich mir stellt in welchen Verzeichnis komm ich eigentlich an? Die nächste Frage wäre kann man die Dateien dann über die FTP Verbindung nur zum lesen öffnen ohne das man dieselben downloaden muss?
@nco2k der Link ist prinzipiel gut, nur das ich alle Dateien im Ordner lesend öffnen will und 2 Strings aus jeder Datei auslesen will, das mit dem auslesen funktioniert im Prinzip schon, hab die Dateien mühevoll von Hand kopiert.
Fragen über Fragen.
@nco2k der Link ist prinzipiel gut, nur das ich alle Dateien im Ordner lesend öffnen will und 2 Strings aus jeder Datei auslesen will, das mit dem auslesen funktioniert im Prinzip schon, hab die Dateien mühevoll von Hand kopiert.
Fragen über Fragen.
Wir leben alle unter dem gleichen Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.
@dietmar
> Mein Problem ist wie ich das Ftp Verzeichnis wechseln kann
kommt drauf an mit welchen prozeduren du jetzt arbeitest, wenn du die api befehle verwendest dann kannst du es ja mit FtpSetCurrentDirectory_()
> oder die Frage die sich mir stellt in welchen Verzeichnis komm ich eigentlich an
je nachdem wie der ftp server eingerichtet ist, landest du auf dem entsprechenden verzeichniss, solltest du am besten mit FtpGetCurrentDirectory_() überprüfen (auch hier gilt, sofern du die api befehle verwendest).
> Die nächste Frage wäre kann man die Dateien dann über die FTP Verbindung nur zum lesen öffnen ohne das man dieselben downloaden muss?
klar mit FtpOpenFile_() und InternetReadFile_() (wieder api) siehe http://forums.purebasic.com/german/viewtopic.php?t=1110 als denkanstoss.
> nur das ich alle Dateien im Ordner lesend öffnen will und 2 Strings aus jeder Datei auslesen will
musst du dann datei für datei halt machen. gleichzeitig könntest du zwar auch, aber einige server blockieren mehrere (gleichzeitige) verbindungen von der selben ip. so fährst du auf nummer sicher.
falls du dich nicht mit dem api zeug anfreunden willst oder kannst und doch lieber über die pb internen netzwerk befehle auf dein ftp server zugreiffen willst, frag am besten mal DarkDragon, er hat auch sowas mal gemacht und kennt sich damit aus. ich persönlich schwöre jedoch auf die api befehle (sofern deine anwendung nicht auch noch unter linux/mac laufen soll).
c ya,
nco2k
> Mein Problem ist wie ich das Ftp Verzeichnis wechseln kann
kommt drauf an mit welchen prozeduren du jetzt arbeitest, wenn du die api befehle verwendest dann kannst du es ja mit FtpSetCurrentDirectory_()
> oder die Frage die sich mir stellt in welchen Verzeichnis komm ich eigentlich an
je nachdem wie der ftp server eingerichtet ist, landest du auf dem entsprechenden verzeichniss, solltest du am besten mit FtpGetCurrentDirectory_() überprüfen (auch hier gilt, sofern du die api befehle verwendest).
> Die nächste Frage wäre kann man die Dateien dann über die FTP Verbindung nur zum lesen öffnen ohne das man dieselben downloaden muss?
klar mit FtpOpenFile_() und InternetReadFile_() (wieder api) siehe http://forums.purebasic.com/german/viewtopic.php?t=1110 als denkanstoss.
> nur das ich alle Dateien im Ordner lesend öffnen will und 2 Strings aus jeder Datei auslesen will
musst du dann datei für datei halt machen. gleichzeitig könntest du zwar auch, aber einige server blockieren mehrere (gleichzeitige) verbindungen von der selben ip. so fährst du auf nummer sicher.
falls du dich nicht mit dem api zeug anfreunden willst oder kannst und doch lieber über die pb internen netzwerk befehle auf dein ftp server zugreiffen willst, frag am besten mal DarkDragon, er hat auch sowas mal gemacht und kennt sich damit aus. ich persönlich schwöre jedoch auf die api befehle (sofern deine anwendung nicht auch noch unter linux/mac laufen soll).
c ya,
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Wie soll ich mich mit etwas anfreundne das ich nicht kenne geschweige denn verstehe. Es gibt da wohl ein Link zu API in der Hilfe aber da komm ich dann auf ner englischen Homepage raus. In Englisch versteh ich es dann genauso wie in deutsch gar nicht. Goggle findet zwar viel es ist aber (glaub ich) nie was passendes dabei. Werd DarkDragon mal fragen aber wenn der mir nich t helfen kann werd ich das Projekt fallen lassen müssen. 

Wir leben alle unter dem gleichen Sternenhimmel, aber wir haben nicht alle den gleichen Horizont.