Mit FTP Programm auf PB FTP-Lib Verzeichnisse zugreifen.

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Mit FTP Programm auf PB FTP-Lib Verzeichnisse zugreifen.

Beitrag von Joel »

Hallo,

Ich habe mit dem Code unten ganz normal Dateien auf meinen Server geschrieben und .jpg Bilder hohgeladen. Wenn ich nun mit dem FTP Server ein mittels PB erstelltes Verzeichnis öffne, dann wird Angezeigt:

Code: Alles auswählen

Befehl:	CWD Test
Antwort:	550 Test: No such file or directory
Fehler:	Verzeichnisinhalt konnte nicht empfangen werden
Code:

Code: Alles auswählen

Procedure FTP()
InitNetwork()
OpenFTP(0, "test.funpic.de", "test", "test" , 1, 21)
SetFTPDirectory(0, "Temp")
CreateFTPDirectory(0, Ordner.s)
SetFTPDirectory(0, Ordner.s)
d$ = "0"
For a = 1 To Down
d$ = Str(Val(d$)+1)
SendFTPFile(0, "C:\Dokumente und Einstellungen\Joel\Desktop\"+d$+".JPG", d$+".JPG")
Next 
CloseFTP(0)
EndProcedure
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Mit FTP Programm auf PB FTP-Lib Verzeichnisse zugreifen.

Beitrag von Kiffi »

Joel hat geschrieben:Code:

Code: Alles auswählen

Procedure FTP()
InitNetwork()
OpenFTP(0, "test.funpic.de", "test", "test" , 1, 21)
SetFTPDirectory(0, "Temp")
CreateFTPDirectory(0, Ordner.s)
SetFTPDirectory(0, Ordner.s)
d$ = "0"
For a = 1 To Down
d$ = Str(Val(d$)+1)
SendFTPFile(0, "C:\Dokumente und Einstellungen\Joel\Desktop"+d$+".JPG", d$+".JPG")
Next 
CloseFTP(0)
EndProcedure
1) OpenFTP(), SetFTPDirectory(), CreateFTPDirectory() und SendFTPFile()
liefern allesamt Rückgabewerte. Diese solltest Du auf jeden Fall
überprüfen um eine Aussage zu treffen, was geklappt hat und was nicht.

2) Welchen Wert hat 'Down'? Wenn das keine globale Variable ist, dann
hat sie den Wert 0 und dann wird auch nichts gesendet.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Haben alle Werte:

Ordner.s = "Test"
Down = 8
usw.

Der Debuger gibt folgendes zurück:

Code: Alles auswählen

1
8462376
1
1
1
1
1
1
1
1
1
1
1
8462376
Die vielen einsen zeigt er an, weil jedes mal eine Datei gesendet wurde.

Aber das FTP Programm kann wieder nicht darauf zugreifen.

Code: Alles auswählen

Procedure FTP() 
Debug InitNetwork() 
Debug OpenFTP(0, "test.funpic.de", "test", "test" , 1, 21) 
Debug SetFTPDirectory(0, "Temp") 
Debug CreateFTPDirectory(0, Ordner.s) 
Debug SetFTPDirectory(0, Ordner.s) 
d$ = "0" 
For a = 1 To Down 
d$ = Str(Val(d$)+1) 
Debug SendFTPFile(0, "C:\Dokumente und Einstellungen\Joel\Desktop\"+d$+".JPG", d$+".JPG") 
Next 
Debug CloseFTP(0) 
EndProcedure
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Ach, ich habe den Fehler gefunden,

Ich ahbe den ordner im Windows Explorer geöffnet, und der hat hinter dem Ordnernamen bei öffnen: "%20" angezeigt, das heißt, soweit ich weiß, dass hinter dem Namen ein Leerzeichen steht.
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Antworten