Rubrik: HTML/Internet/Netzwerk · Sonstiges | VB-Versionen: VB4, VB5, VB6 | 22.11.06 |
![]() Mit Hilfe des Microsoft Internet Transfer Control lässt sich eine Datei mit wenig Aufwand auf einen FTP-Server hochladen. | ||
Autor: ![]() | Bewertung: ![]() ![]() ![]() ![]() ![]() | Views: 23.954 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Vista, Win7, Win8, Win10 | ![]() |
Immer wieder taucht die Frage auf, wie man ohne viel Aufwand eine lokale Datei auf einen FTP-Server hochladen kann. Hierzu gibt es viele Varianten, wie bspw. die Nutzung
der Windows API FTP-Funktionen: FTP FileUpload via WININET.DLL
Nachfolgend stellen wir eine weitere Möglichkeit vor, die das Microsoft Internet Transfer Control (kurz INET) verwendet.
Fügen Sie Ihrem Projekt das Microsoft Internet Transfer Control hinzu und platzieren es auf die Form. Für den Upload einer Datei wird folgender Code benötigt:
Option Explicit ' Für Fehlerauswertung... Dim bError As Boolean
Private Sub Inet1_StateChanged(ByVal State As Integer) ' Bei Fehler... If State = icError Then bError = True End If End Sub
Dim sLocalFile As String Dim sRemoteFile As String bError = False With Inet1 .AccessType = icUseDefault ' Protokoll auf FTP setzen und Port 21 verwenden .Protocol = icFTP .RemotePort = 21 ' Name des FTP-Servers, zu dem verbunden werden soll .URL = "ftpserver.de" ' Benutzer-Authentifizierung .UserName = "Benutzername" .Password = "password" ' Datei, die hochgeladen werden soll (lokal) sLocalFile = App.Path & "\ftp\file1.gif" ' Verzeichnis und Dateiname der Zieldatei auf dem FTP-Server sRemoteFile = "/upload/ftp/file1.gif" ' Upload ausführen .Execute , "PUT " & sLocalFile & " " & sRemoteFile ' Warten, bis Vorgang abgeschlossen Do While .StillExecuting And Not bError DoEvents Loop If Not bError Then ' Upload war erfolgreich Else ' Fehler MsgBox "Fehler beim Upload!" & vbCrLf & _ "ResponseCode: " & .ResponseCode & vbCrLf & _ "ResponseInfo: " & .ResponseInfo End If End With