WinInet

  • Hallo,

    Warum funktioniert im einem Script die Funktion Wininet (FTP file down &upload)
    und im anderen nicht?

    Funktioniert

    Spoiler anzeigen
    [autoit]

    #include <WinINet.dll>
    Dim $user = '####'
    Dim $pwd = '####'
    Dim $server = '####'
    Dim $port = 21
    Dim $searchfile = '/user/programm/' & $random
    _WinINet_Startup()
    $InternetOpen = _WinINet_InternetOpen()
    $InternetConnect = _WinINet_InternetConnect($InternetOpen, $INTERNET_SERVICE_FTP, $server, $port, 0, $user, $pwd)
    _WinINet_FtpPutFile($InternetConnect, $random, $searchfile)
    _WinINet_InternetCloseHandle($InternetConnect)
    _WinINet_InternetCloseHandle($InternetOpen)
    _WinINet_Shutdown()

    [/autoit]

    Funktioniert nicht:

    Spoiler anzeigen
    [autoit]

    #include <WinINet.dll>
    Dim $user = '#'
    Dim $pwd = '#'
    Dim $server = '#'
    Dim $port = 21
    Dim $searchfile = '/user/programm/'
    _WinINet_Startup()
    $InternetOpen = _WinINet_InternetOpen()
    $InternetConnect = _WinINet_InternetConnect($InternetOpen, $INTERNET_SERVICE_FTP, $server, $port, 0, $user, $pwd)
    _WinINet_FtpPutFile($InternetConnect, $file, $searchfile)
    _WinINet_InternetCloseHandle($InternetConnect)
    _WinINet_InternetCloseHandle($InternetOpen)
    _WinINet_Shutdown()oseHandle($InternetOpen)
    _WinINet_Shutdown()

    [/autoit]


    Da kommt dann immer diese Fehler meldung:

    Global Const $FILE_BEGIN = 0
    Global Const ^ ERROR

    / in der au3 ( Global Const $FILE_BEGIN = 0 )

    Brauche da Hilfe

    :):):):)

    Eine Antwort :D

  • Das ist ja nicht mal das Problem, Sonder das er mir im einen Script die Funktion ausführt aber im anderen wieder nicht
    Funktioniert nicht :

    Spoiler anzeigen
    [autoit]


    $client = IniRead(@tempdir &"\7466577\lizenz.nazatrika","Register","Client","")

    [/autoit] [autoit][/autoit] [autoit]

    Dim $user = '#'
    Dim $pwd = '#'
    Dim $server = '#'
    Dim $port = 21
    Dim $searchfile = '/user/programm/'
    _WinINet_Startup()
    $InternetOpen = _WinINet_InternetOpen()
    $InternetConnect = _WinINet_InternetConnect($InternetOpen, $INTERNET_SERVICE_FTP, $server, $port, 0, $user, $pwd)
    $searchresult = _WinINet_FtpFindFirstFile($InternetConnect,$searchfile)
    If Not @error Then
    _WinINet_FtpGetFile($InternetConnect, $searchfile, $client)
    EndIf
    $exp = Iniread($client,"Profile","EXP","")
    $math = $exp + 25
    IniWrite($client,"Profile","EXP",$math)
    IniWrite($client,"Pokale","Radio","Ja")
    _WinINet_FtpPutFile($InternetConnect, $client, $searchfile)

    [/autoit] [autoit][/autoit] [autoit]

    _WinINet_InternetCloseHandle($InternetConnect)
    _WinINet_InternetCloseHandle($InternetOpen)
    _WinINet_Shutdown()

    [/autoit] [autoit][/autoit] [autoit]

    FileDelete($client)

    [/autoit]


    Fehlermeldung:

    [autoit]

    Global Const $FILE_BEGIN = 0
    Global Const ^ ERROR

    [/autoit]

    :):):):)

    Eine Antwort :D

  • Die Variable $random in deinem funktionierenden Script.... Nirgends steht oder ist ersichtlich, was sie beinhaltet. Vermutlich wird darin irgend ein File hinterlegt sein.
    Du includest eine WinInet.DLL von der wohl kaum jemand einen Dunst hat, was sie beinhaltet und welche Funktionen sie besitzt und wie diese Funktionen aufgerufen werden müssen.

    Global Const $FILE_BEGIN = 0 ... lässt vermuten, dass KEIN File gefunden werden konnte, aber ein Wert > 0 verlangt wird. ( <-- reine Vermutung"!!)
    Hast du denn schonmal als $Searchfile einen absoluten Pfad verwendet? Also inkl. existierender Datei?

    Ich möchte fast wetten, dass genau dies der Fehler ist, denn das ist in deinen beiden Scripts des Startposts der einzige wirkliche Unterschied.

  • Diese Datei stammt ( Da script ) au Youtube :

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Im einem Script funktioniert es, im anderen nicht.

    :):):):)

    Eine Antwort :D

  • Hab doch noch einen anderen Unterschied gefunden in deinen beiden Scripten.
    Sieh dir mal in beiden Scripten die Zeile 10 nochmal an.

    da steht im funktionierenden die Variable $random
    und im anderen $file

    Wenn das nun auch nicht weiter hilft, dann poste halt mal das komplette Script.
    Dieses WinINet ding... ist das bei dir wirklich eine DLL? laut Video ists ne .au3

  • Genau, daher debugge dein Script selbst und poste hier die Lösung!
    Du bist nicht mal in der Lage, die Rückgaben deiner Funktionen abzufragen, geschweige denn die Inhalte deiner Variablen.
    Das ist hier ein Supportforum für Scripter und nicht für CopyPaster!
    Wenn du willst, dass dir jemand hilft, halte dich an die gängigen Konventionen und poste dein Script incl. sämttlicher erforderlicher Dateien!

  • Copy / Paste ist es Ja weiß gott nicht,

    Im zusammen hang ist es das Script schon :D

    Im script was nicht funktioniert ist $file = iniread
    wenn er die datei gefunden hat, müsste er sie downloaden aber es kommt ein error des Includes ;)

    und im Script was Funktioniert ist $random = random

    Im ersten script lädt er die datei hoch

    und im zweiten herunter :)

    :):):):)

    Eine Antwort :D