mpwfg41
Goto Top

FTP-Upload mit WINSCP

Ich möchte mit WINSCP im Befehlszeilenmodus ca. 120 Dateien aus verschiedenen Verzeichnissen auf meinen Webserver hochladen. Die Dateien werden in einer ACCESS-Datenbank nacheinander erzeugt und sofort einzeln hochgeladen.
Ich habe dazu in VBA folgende Routine eingebaut:

Aufruf = "C:\Programme\WinSCP\winscp.com /ini=nul /script=" & ftp_datei  
Shell Aufruf

Die ftp_datei wird dynamisch erzeugt und hat folgenden Inhalt:
open ftp://User:Passwort@Servername/
cd /pfad_auf_dem_Server/
put C:\Pfad\hochzuladende_Datei.xyz
close
exit

Das ganze funktioniert einwandfrei, jedoch werden einzelne Dateien nicht übertragen, die Ursache liegt möglicherweise an Leerzeichen (Blanks) und/oder Umlauten in Verzeichnis- und Dateinamen.
Gibt es eine Möglichkeit, in der ftp_Datei einen Befehl einzugeben, der eine Fehlermeldung ausgibt.

mpwfg41

Content-Key: 2774886181

Url: https://administrator.de/contentid/2774886181

Printed on: April 19, 2024 at 09:04 o'clock

Member: Th0mKa
Solution Th0mKa May 13, 2022 at 23:49:06 (UTC)
Goto Top
Zitat von @mpwfg41:
Gibt es eine Möglichkeit, in der ftp_Datei einen Befehl einzugeben, der eine Fehlermeldung ausgibt.

Man kann dem WinSCP Aufruf einen Logging Parameter mitgeben.
https://winscp.net/eng/docs/logging

/Thomas
Member: godlie
Solution godlie May 14, 2022 at 06:23:09 (UTC)
Goto Top
Hallo,

ein kurzer blick in den Syntax von WINSCP Script und du würdest rausgefunden haben, dass man Dateinamen mit Leerzeichen unter "" setzen sollte.

Aber ein Tipp aus der Automation, ersetze alle Leerzeichen durch _ und verzichte auf die besch.... Umlaute, die machen immer wieder Probleme face-smile
Member: mpwfg41
Solution mpwfg41 May 14, 2022 at 16:29:24 (UTC)
Goto Top
Danke für den Hinweis auf die Beschreibung, aber das hätte alleine das Problem mit den Umlauten nicht gelöst. Das Umlautproblem beschäftigt mich seit Jahrzehnten, leider ist dieses Programm empfindlich. Ich hatte die Datenübertragung bisher mit ftp.exe gelöst, das aus unerfindlichen Gründen seit ein paar Wochen nicht mehr funktioniert; dabei spielten sowohl Blanks als auch die Umlaute keine Rolle. Da die Dateinamen aus der Datenbank heraus generiert werden, ist eine Vermeidung der Umlaute so ohne weiteres nicht möglich, da in der DB die Begriffe in ordentlicher Schreibweise (mit Umlauten) erfolgen muss. Ich habe jetzt bei der Automation entsprechende Umwandlungen durchgeführt, was einwandfrei funktioniert und auch zukunftsfest ist.