Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   FTP Upload per Batchscript (https://www.delphipraxis.net/153748-ftp-upload-per-batchscript.html)

Luckie 14. Aug 2010 17:52


FTP Upload per Batchscript
 
Kennt jemand eine Möglichkeit per VBScript eine Datei auf einen Server hochzuladen? Mit Google habe ich bisher nur wege gefunden die ein externes ActiveX Object nutzen. Gibt es auch eine Möglichkeit nur mit Windows Bordmitteln?

Namenloser 14. Aug 2010 18:46

AW: FTP Upload per VBScript
 
Könntest du nicht einfach das Kommandozeilen-FTP-Program aufrufen, das bei Windows mitgeliefert wird?

himitsu 14. Aug 2010 19:24

AW: FTP Upload per VBScript
 
Der IE/Explorer kann FTP (OK, ab IE7 gibt es manchmal Progbleme und nur Lesezugriff, aber theoretisch geht es)

ftp://username:password@url/pfad

Und konnte man nicht auch irgendwo im Explorer Server/FTP-Verbindungen als Verzeichnis anlegen? (irgendwo in dem ganzen Netzwerkzeugs)


Und wie wäre es mit FileZillaPortable?

Luckie 14. Aug 2010 20:19

AW: FTP Upload per VBScript
 
Wie gesagt, ich wollte es mit Windows Bordmitteln machen.

Den Konsolen FTP-Client nutze ich zur Zeit nur leider muss man da das Passwort im Klartext in dem Skript hinterlegen. Das stört mich schon die ganze Zeit. Mit einem VB Script könnte ich eine Passwortabfrage einbauen und könnte das ein oder andere komfortabler lösen, wie zum Beispiel eine Dateiauswahl usw. Denn zur Zeit werden immer alle Dateien per FTP als Backup übertragen:
Code:
open server.de
benutzer
passowrt2
hash
binary
cd html/Privat/backup
lcd "d:\Michael\eigene Dateien"
put "Abrechnungen.7z"
put "Briefe.7z"
put "Tagebuch2010.7z"
put "Dokumente.7z"
close
quit
Da die Dateien mittlerweile recht groß sind, dauert dies unnötig lange, wenn ich Dateien hochladen, die sich nicht geändert haben.

jfheins 14. Aug 2010 21:39

AW: FTP Upload per VBScript
 
Du kannst ja mal die Windows Powershell ausprobieren ;)

Hab gerade mal ein bisschen rumprobiert, und wenn man das hier ausführt bekommt man schonmal n DirectoryListing :-D
Code:
$x = [System.Net.FtpWebRequest]::Create("ftp://user:pwd@server.de")
$x.method = [System.Net.WebRequestMethods+Ftp]::ListDirectory
$y = [net.ftpwebresponse]$x.getresponse()
$z = (new-object IO.Streamreader $y.GetResponseStream()).readtoend()
$z
Das Passwort vorher abzufragen überlasse ich jetzt mal dem geneigten Leser :mrgreen:

Luckie 15. Aug 2010 11:40

AW: FTP Upload per VBScript
 
Ach du meine Güte. Sieht für mich ziemlich unverständlich aus, was da passiert.

jfheins 15. Aug 2010 12:44

AW: FTP Upload per VBScript
 
Äh ja okay, ich hab das halt so (ohne Vorkenntnisse) zusammengeschrieben *g*

Die PowerShell basiert auf dem .net Framework und ist dadurch deutlich mächtiger als die alte Kommandozeile. Mit ein bisschen Gewöhnung klappt das schon ;)

Was passiert: Es wird ein FtpWebRequest erstellt (http://msdn.microsoft.com/de-de/libr...od(VS.80).aspx) und festgelegt, was passieren soll. Anfrage wird abgesendet und die Antwort (die als Stream vorliegt) in einen String konvertiert.

In C# sieht das so aus:
PHP-Quellcode:
 var x = FtpWebRequest.Create("ftp://user:pwd@example.com");
            x.Method = WebRequestMethods.Ftp.ListDirectory;
            var resp = x.GetResponse() as FtpWebResponse;
            var answer = new StreamReader(resp.GetResponseStream()).ReadToEnd();
            Console.WriteLine(answer);
Vielleicht ist das etwas verständlicher :)

Neumann 15. Aug 2010 13:25

AW: FTP Upload per VBScript
 
Hallo,

bin vor kurzem mal auf AutoIT gekommen, eine Scriptsprache zur Automatisierung von Windows. Ist relativ einfach, es gibt einen GUI-Builder (sieht aus wir ein extrem abgespecktes Delphi 7) und Compiler dafür der Exe-Dateien erzeugt.

Gruß

Ralf

Luckie 15. Aug 2010 16:36

AW: FTP Upload per VBScript
 
Danke, ich miss mir das noch mal durch den Kopf gehen lassen. Eventuell schreibe ich mir auch ein kleines Programm in Delphi oder C#.

Luckie 16. Aug 2010 15:45

AW: FTP Upload per VBScript
 
Ok, dann mal anders. Gibt es bei dem Script für die ftp.exe
Code:
open server.de
benutzer
passwort
hash
binary
cd html/Privat/backup
lcd "d:\Michael\eigene Dateien"
put "Abrechnungen.7z"
put "Briefe.7z"
put "Tagebuch2010.7z"
put "Dokumente.7z"
close
quit
eine Möglichkeit das Passwort abzufragen, so dass man es nicht hardcodieren muss?


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:03 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz