Funktionsreferenz

_FTP_Open

Öffnet eine FTP Sitzung.

#Include <FTPEx.au3>
_FTP_Open($s_Agent[, $l_AccessType = 1 [, $s_ProxyName = '' [, $s_ProxyBypass = '' [, $l_Flags = 0]]]] )

 

Parameter

$s_Agent Zufälliger Name. ( Wie "myftp" )
$l_AccessType [optional] Setzten, wenn ein Proxy benutzt wird.
$s_ProxyName [optional] Name des Proxys.
$s_ProxyBypass [optional] Proxy Bypass Liste.
$l_Flags [optional] Siehe remarks.

 

Rückgabewert

Erfolg: Gibt einen Handle zurück, der in _FTP_Connect() benutzt werden kann.
Fehler: 0 und setzt @ERROR.

 

Bemerkungen

Werte für $l_AccessType
    $INTERNET_OPEN_TYPE_DIRECT -> Kein Proxy
    $INTERNET_OPEN_TYPE_PRECONFIG -> Erneuert den Proxy oder konfiguriert direkt aus der Registry.
    $INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY -> Erneuert den Proxy oder konfiguriert direkt aus der Registry und verhindert den Start des Microsoft JSkripts oder der Internet Setup (INS) Datei.
    $INTERNET_OPEN_TYPE_PROXY -> Leitet Anfragen zum Proxy weiter. Ausgenommen wenn eine Proxy Bypass Liste angegeben wurde und der aufzulösende Name in dieser Liste enthalten ist. Dann wird kein Proxy verwendet.

Werte für $l_Flags
    $INTERNET_FLAG_ASYNC -> Macht nur Asynchrone Anfragen auf Handles die von dem Handle der Funktion zurückgegeben wurde.
    $INTERNET_FLAG_FROM_CACHE -> Macht keine Netzwerk Anfragen. Alle Einträge werden vom Cache zurückgegeben. Wenn die betroffene Position nicht im Cache vorhanden ist, wird eine ähnlicher Fehler, wie ERROR_FILE_NOT_FOUND zurückgegeben.

 

Verwandte Funktionen

_FTP_Connect, _FTP_Close, _FTP_SetStatusCallback

 

Siehe auch

Suche in der MSDN Bibliothek nach InternetOpen

 

Beispiel


; *******************************************************
; Beispiel 1
; *******************************************************
;
#include <FTPEx.au3>

$Open = _FTP_Open('Mein FTP-Control')
; ...
$Ftpc = _FTP_Close($Open)



; *******************************************************
; Beispiel 2
; *******************************************************
;
#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <FTPEx.au3>
#include <Misc.au3>

Opt('MustDeclareVars', 1)

_example1()
_example2()

#cs
    Beispiel mit externem Progressfenster zur Demostration der Fortschrittsanzeige mit einer Benutzerfunktion
#ce
Func _example1()
    Local $s_ServerName = 'ftp.csx.cam.ac.uk' ;das ist ein real existierender Server
    Local $s_Username = ''
    Local $s_Password = ''
    Local $i_Passive = 0 ;aktive Verbindung nutzen wenn bei anderen Server Probleme dann auch mit 1 für passive Verbung testen
    Local $l_InternetSession, $l_FTPSession
    Local $errOpen, $errFTP

    If FileExists(@TempDir & "\tmp.tmp") Then FileDelete(@TempDir & "\tmp.tmp") ;Nur um sicher zustellen dass das File nicht existiert

    $l_InternetSession = _FTP_Open('AuoItZilla') ;Öffnet eine FTP Sitzung
    $errOpen = @error
    If Not @error Then
        $l_FTPSession = _FTP_Connect($l_InternetSession, $s_ServerName, $s_Username, $s_Password, $i_Passive) ;Verbindet zu einem FTP Server
        $errFTP = @error
        If Not @error Then
            ProgressOn("Download", "Status:", "coded autoBert 2011")
            _FTP_ProgressDownload($l_FTPSession, @ScriptDir & "\tmp.tmp", "README", "_UpdateProgress")
            If @error Then ConsoleWrite("Fehler bei _FTP_ProgressDownload: " & @error)
            ProgressOff()
        Else
            MsgBox(0, "Connect", "fehlgeschlagen")
            ConsoleWrite("Connect: " & " " & $errFTP & @CRLF)
        EndIf
    Else
        MsgBox(0, "Open", "fehlgeschlagen")
        ConsoleWrite("Open " & " " & $errOpen & @CRLF)
    EndIf
    _FTP_Close($l_InternetSession)
EndFunc   ;==>_example1

Func _UpdateProgress($Prozent)
    ProgressSet($Prozent, $Prozent & "%")
    If _IsPressed("77") Then Return 0 ; Abbruch bei F8
    Return 1 ; bei 1 Fortsetzen
EndFunc   ;==>_UpdateProgress


Func _example2()
    #cs
        Beispiel mit eingebauter Fortschrittsanzeige von _FTP_ProgressDownload
    #ce
    Local $s_ServerName = 'ftp.csx.cam.ac.uk' ;das ist ein real exitierender Server
    Local $s_Username = ''
    Local $s_Password = ''
    Local $i_Passive = 0 ;aktive Verbindung nutzen wenn bei anderen Server Probleme dann ach mit 1 für passive Verbung testen
    Local $l_InternetSession, $l_FTPSession
    Local $errOpen, $errFTP

    If FileExists(@TempDir & "\tmp.tmp") Then FileDelete(@TempDir & "\tmp.tmp") ;Nur um sicher zustellen dass das File nicht existiert

    $l_InternetSession = _FTP_Open('AuoItZilla') ;Öffnet eine FTP Sitzung
    $errOpen = @error
    If Not @error Then
        $l_FTPSession = _FTP_Connect($l_InternetSession, $s_ServerName, $s_Username, $s_Password, $i_Passive) ;Verbindet zu einem FTP Server
        $errFTP = @error
        If Not @error Then
            _FTP_ProgressDownload($l_FTPSession, @ScriptDir & "\tmp.tmp", "README")
            If @error Then ConsoleWrite("Fehler bei _FTP_ProgressDownload: " & @error)
        Else
            MsgBox(0, "Connect", "fehlgeschlagen")
            ConsoleWrite("Connect: " & " " & $errFTP & @CRLF)
        EndIf
    Else
        MsgBox(0, "Open", "fehlgeschlagen")
        ConsoleWrite("Open " & " " & $errOpen & @CRLF)
    EndIf
    _FTP_Close($l_InternetSession)
EndFunc   ;==>_example2