Sicherlich kennen Sie bereits unsere Visual Basic Extended Library - sprich Wie sich das ganze direkt in VB und mit Hilfe des Windows-API realisieren lässt, zeigt unser heutiger Tipp. Fügen Sie nachfolgenden Code in ein Modul ein: Option Explicit ' zunächst alle benötigten API-Deklarationen Private Declare Function InternetOpen Lib "wininet.dll" _ Alias "InternetOpenA" ( _ ByVal sAgent As String, _ ByVal nAccessType As Long, _ ByVal sProxyName As String, _ ByVal sProxyBypass As String, _ ByVal nFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet.dll" ( _ ByVal hInet As Long) As Integer Private Declare Function InternetConnect Lib "wininet.dll" _ Alias "InternetConnectA" ( _ ByVal hInternetSession As Long, _ ByVal sServerName As String, _ ByVal nServerPort As Integer, _ ByVal sUsername As String, _ ByVal sPassword As String, _ ByVal nService As Long, _ ByVal nFlags As Long, _ ByVal nContext As Long) As Long Private Declare Function FtpPutFile Lib "wininet.dll" _ Alias "FtpPutFileA" ( _ ByVal hFtpSession As Long, _ ByVal lpszLocalFile As String, _ ByVal lpszRemoteFile As String, _ ByVal dwFlags As Long, _ ByVal dwContext As Long) As Boolean ' Kostanten Private Const INTERNET_OPEN_TYPE_PRECONFIG = 0 Private Const INTERNET_INVALID_PORT_NUMBER = 0 Private Const INTERNET_SERVICE_FTP = 1 ' Übertragungsmodus Public Enum eTransferType FTP_TRANSFER_TYPE_BINARY = &H2 FTP_TRANSFER_TYPE_ASCII = &H1 End Enum ' Handles Private hOpen As Long Private hConnection As Long ' Verbindung zum Server herstellen Public Function Connect(ByVal sRemoteHost As String, _ Optional ByVal sUsername As String = "anonymous", _ Optional ByVal sPassword As String = "guest") As Boolean ' Ist noch eine Verbindung vorhanden? ' Wenn ja, muss diese zunächst beendet werden! If hOpen <> 0 Or hConnection <> 0 Then Disconnect End If ' Neue Verbindung starten hOpen = InternetOpen("FTP", _ INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, _ vbNullString, 0) If hOpen Then hConnection = InternetConnect(hOpen, _ sRemoteHost, INTERNET_INVALID_PORT_NUMBER, _ sUsername, sPassword, INTERNET_SERVICE_FTP, 0, 0) End If Connect = (hConnection <> 0) End Function ' Datei auf den Server hochladen Public Function FileUpload( _ ByVal sLocalFilename As String, _ ByVal sRemoteFilename As String, _ Optional ByVal nTransferType As eTransferType = _ FTP_TRANSFER_TYPE_BINARY) As Boolean FileUpload = FtpPutFile(hConnection, _ sLocalFilename, sRemoteFilename, nTransferType, 0) End Function ' Verbindung zum Server beenden Public Sub Disconnect() If hConnection <> 0 Then InternetCloseHandle hConnection hConnection = 0 End If If hOpen <> 0 Then InternetCloseHandle hOpen hOpen = 0 End If End Sub Aufrufbeispiel: Dim sRemoteHost As String Dim sLocalFile As String Dim sRemoteFile As String Dim nTransferMode As eTransferType Dim bResult As Boolean ' Anmeldung am eigenen T-Online Server sRemoteHost = "home-up.t-online.de" If Connect(sRemoteHost) Then ' Lokaler Dateiname sLocalFile = App.Path & "\myHelp.txt" ' Ziel-Datei auf dem Server ' Achtung! Verzeichnis muss bereits existsieren!!! sRemoteFile = "/download/help/myHelp.txt" ' Ascii-Übertragung nTransferMode = FTP_TRANSFER_TYPE_ASCII ' Upload durchführen bResult = FileUpload(sLocalFile, sRemoteFile, nTransferMode) If bResult Then MsgBox "Upload erfolgreich!" Else MsgBox "Fehler beim Upload der Datei!" End If ' Verbindung trennen Disconnect End If Anmerkung: Dieser Tipp wurde bereits 44.673 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevAniGif (VB/VBA) ![]() Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Tipp des Monats ![]() Dieter Otter PopUp-Menü wird nicht angezeigt :-( In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Access-Tools Vol.1 ![]() Über 400 MByte Inhalt Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |