1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Alina

Beiträge von Alina

  • Update funktion?

    • Alina
    • 9. Juni 2008 um 13:59

    Hallo.

    Ich habe das mal wie folgt getestet und so funktioniert es:

    Spoiler anzeigen
    [autoit]


    #Include <File.au3>
    #include <GUIConstants.au3>
    #Include <Array.au3>

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

    ;~ Updaten
    $ver = "1.0.0"
    InetGet("http://www.musterseite.de/update.txt",@TempDir & "\update.txt", 1, 0) ; ANPASSEN
    $file = FileOpen(@TempDir & "\update.txt", 0)
    $line = FileReadLine($file, 1)
    If $line = $ver Then
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    Else
    MsgBox(64, "Update!", "Es ist eine Neue Version verfügbar!")
    InetGet("http://www.musterseite.de/" & "test.exe", "test.exe", 1, 0) ; ANPASSEN
    FileClose($file)
    FileDelete(@TempDir & "\update.txt")
    Exit 0
    EndIf

    [/autoit]

    meine update.txt auf dem Server sieht wie folgt aus:

    Spoiler anzeigen
    [autoit]


    1.0.1

    [/autoit]

    Sollte Dir helfen.

    Ansonsten einfach nachfragen.

    Einen sommerlichen Gruß, Crazy-A.

  • My Video

    • Alina
    • 8. Juni 2008 um 20:14

    OK und Danke !!!

  • My Video

    • Alina
    • 8. Juni 2008 um 19:01

    Hallo.

    Das myvideo.de-Script geht nicht mehr.

    Was ist falsch?

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    #include<File.au3>
    #include<Inet.au3>
    #include<GUIConstantsEx.au3>
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=..\..\..\Minium Doc XP Icon 03.ico
    #AutoIt3Wrapper_UseUpx=n
    #AutoIt3Wrapper_UseAnsi=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

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

    PluginOpen("pthreadGC2.dll")

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

    GUICreate("My Video.de Downloader", 273, 105, 193, 115, -1, BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
    DIM $DwnInput = GUICtrlCreateInput("3067224", 8, 24, 257, 21)
    GUICtrlCreateLabel("www.myvideo.de Video-Nummer(ID):", 8, 8, 268, 15)
    $start = GUICtrlCreateButton("&Start", 8, 48, 128, 25, 0)
    $progressCurrent = GUICtrlCreateProgress(8, 80, 257, 16)
    $abb = GUICtrlCreateButton("A&bbruch", 137, 48, 128, 25, 0)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $abb
    Exit
    Case $start
    GUICtrlSetState($start,$GUI_DISABLE)

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

    $link = _LinkLoad(GUICtrlRead($DwnInput))
    $size = InetGetSize($link)
    InetGet($link, @ScriptDir&"\"&GUICtrlRead($DwnInput)&".flv", 0, 1)
    If @error Then
    MsgBox(0,"","error")
    Else
    While @InetGetActive
    GUICtrlSetData($progressCurrent,(@InetGetBytesRead/$size)*100)
    WEnd
    If @error Then
    MsgBox(0,"Download","Downloaderror")
    Else
    MsgBox(0,"","Download abgeschlossen! Datei wird nun umgewandelt. Dieses kann je nach Dateigröße etwas Zeit in Anspruch nehmen.")
    EndIf
    Run('ffmpeg -i '&GUICtrlRead($DwnInput)&'.flv -vcodec mpeg1video -acodec copy -b 600 '&GUICtrlRead($DwnInput)&'.mpg')
    EndIf
    #cs
    If Not FileExists("test.bat") Then _FileCreate("test.bat")
    FileOpen("test.bat", 2)
    FileWrite("test.bat", '"ffmpeg" -i ')
    FileWrite("test.bat", (GUICtrlRead($DwnInput)))
    FileWrite("test.bat", ".flv")
    FileWrite("test.bat", " -vcodec mpeg1video -acodec copy -b 600 ")
    FileWrite("test.bat", GUICtrlRead($DwnInput))
    FileWrite("test.bat", ".mpg")
    FileClose("test.bat")
    GUIDelete()

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

    RunWait(@ComSpec & " /c " & 'test.bat',"", @SW_HIDE)

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

    PluginClose("pthreadGC2.dll")
    sleep(1000)
    MsgBox(0,"Fertig","Fertig")
    FileOpen("test.bat", 2)
    FileWrite("test.bat", "")
    FileClose("test.bat")
    FileDelete(@ScriptDir&"/test.bat")
    Exit
    #ce
    EndSwitch
    WEnd

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

    Func _LinkLoad($id)
    $url = "http://www.myvideo.de/watch/"&$id
    $source = _INetGetSource($url)
    $array = StringRegExp($source, "((http://myvideo-)\d+(.)\w+(.)\w+(.net)(/)\w+(/)\w+(/)\w+(/)"&$id&"+(.flv)){1}", 2)
    If IsArray($array) Then
    $VidLink = $array[1]
    Return $VidLink
    Else
    Return 1
    EndIf
    EndFunc

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

    Crazy-A

  • Outlook & OExpress Saver...

    • Alina
    • 8. Juni 2008 um 18:11

    Neue Version arbeitet sehr gut.
    Für Links brauchst dich doch nicht bedanken.

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 20:26

    Also ich meine das ich mich mal ran setzen sollte eine GUI dafür zu schreiben.
    So das man 1-5 Dateien uploaden kann.

    Schau'n wir mal ;)

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 19:10

    @progandy: ???

    Was ist denn nun die FTP_Ex.au3 und machst Du es so, das auch Anfängerinnen es verstehen? Also mit Erklärung für Blondi ;)

  • AutoIt Zukunftssicher?

    • Alina
    • 7. Juni 2008 um 18:59

    Hallo.

    Ich kann nur bejahend nicken.

    Ich habe hier in einem Jahr mehr gelernt, als in sieben Jahren Batching.
    Dazu kommt, das mir AutoIt sehr viel Arbeit abgenommen hat und das ich "süchtig" danach bin.
    Nur ab und an glaube ich, stören meine "Crazy-Ideen", die ich nicht verschweigen kann.

    Also, es ist auf jeden Fall zukunftssicher, denn es wird immer an der neusten Version gearbeitet und weiter Entwickelt.

    AutoIt ist der Ferrari für Anfänger und Fortgeschrittene und im Bereich der Automatisierung "glatter Konstrukteurmeister".
    Okay, okay. Ich kenne ja die Sachen wie C++ und so noch nicht. Evtl. ja in 10 Jahren. LOL

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 18:53

    @progandy

    Zeile 4:
    $x = _FTP_Upload( $serv, $username, $pass, 'testdatei.jpg' , "D:\Dokumente\Dateien von Andreas\Eigene Bilder\1.jpg","_UpdateParts")

    Zeile 23:
    Func _FTP_Upload( $server, $user, $password, $file,$FileLocal ,$FunctionToCall="")


    Frage:
    Ich gebe oben ja die Variablen ein, aber ich gebe nur einmal server und einmal password an.
    Ist es richtig, das die Variablen $serv und $server bzw. $pass und $password verwendet werden und beides ist doch das gleiche.

    Bei mir sehen die ersten Zeilen so aus:

    Spoiler anzeigen
    [autoit]


    ; Program til at uploade billeder er oprettet med AutoIt
    ; Implementering af: progandy

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

    $server = "home.dknet.net"
    $user = "crazy"
    $password = "***************" ; ase adgangskode til stjernerne brug

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

    ProgressOn("Upload","Uploading file [Cancel with F8]")
    $x = _FTP_Upload( $server, $user, $password, 'public_html/testdatei.jpg' , 'E:\testdatei.jpg')
    ProgressSet(100,"Return: " & $x & @CRLF & "Error: " & @error)
    Sleep(2000)
    ProgressOff()

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

    ProgressOn("Upload","Uploading file [Cancel with F8]")
    $x = _FTP_Upload( $server, $user, $password, 'public_html/testdatei2.jpg' , 'E:\testdatei2.jpg')
    ProgressSet(100,"Return: " & $x & @CRLF & "Error: " & @error)
    Sleep(2000)
    ProgressOff()

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

    Func _UpdateParts($percent)
    ProgressSet($percent,$percent &"%")
    If _IsPressed("77") Then Return 0
    ;~ Switch GUIGetMsg()
    ;~ Case $GUI_EVENT_CLOSE
    ;~ Return -1 ; In Upload einn Abbruch einbauen, der negative Werte als Return angibt :) dann im Haupt-Programm testen.
    ;~ Case $Cancel
    ;~ Return 0 ; bei 0 Abbruch
    ;~ EndSwitch
    Return 1 ; bei 1 Fortsetzten
    Endfunc

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

    Func _FTP_Upload( $server, $user, $password, $file,$FileLocal ,$FunctionToCall="")
    ...
    ...

    [/autoit]

    Gruß, Crazy-A.

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 14:23

    Okay, das sollte ich mir mal schmerzfrei durch den Kopf gehen lassen.
    Ab besten ich gehe jetzt etwas shoppen, da bekommt Frau bekanntlich ja am besten den Kopf frei.

    Also bis späääääter.

    Crazy-A

  • Bestimmte ordner suchen und kopieren

    • Alina
    • 7. Juni 2008 um 14:15

    Evtl. hilft Dir das weiter?

    Dateien finden:
    FileFindFirstFile Gibt einen den angegebenen Suchkriterien entsprechenden Dateinamen zurück.
    FileFindNextFile Gibt einen Dateinamen entsprechend eines früheren Aufrufes von FileFindFirstFile zurück.

    Spoiler anzeigen
    [autoit]


    $search = FileFindFirstFile("*.*")

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

    ; Prüft ob Suche erfolgreich war
    If $search = -1 Then
    MsgBox(0, "Error", " Suche erfolglos. Habe nichts gefunden")
    Exit
    EndIf

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

    While 1
    $file = FileFindNextFile($search)
    If @error Then ExitLoop

    MsgBox(4096, "Datei:", $file)
    WEnd

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

    ; schließe die Suchabfrage
    FileClose($search)

    [/autoit]

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 14:09

    Hallo limette

    Ja, das mit dem FileRead Handle habe ich noch nicht ganz verstanden. Besser gesagt verstehe ich nicht, wiede er das erste mal ab dem ersten Buchstaben 5 Zeichen ließt und beim zweiten mal die nächsten 5 Zeichen. Beide male ist außer die Variable der gleiche Leseaufruf, der da heißt lese 5 Zeichen / Buchstaben oder was auch immer da ist.
    Da kann es sein, das ich blond bin, aber eine Erklärung wäre echt gut.

    Crazy-A ?(

  • Outlook & OExpress Saver...

    • Alina
    • 7. Juni 2008 um 13:45

    RR04
    Version 2: sehr gut !!!


    Frage: Outlook 2002 oder welches Outlook meinst Du?

    Gehe mal auf: http://www.mailhilfe.de und dort bei den Tips & Tricks sind die verschiedenen Outlookversionen und alle Informationen die man evtl. bräuchte. Ich blicke da aber nicht durch, was Du brauchen könntest. Aber die deutsche Seite von Mailhilfe sollte das beantworten was Du alles beachten müßtest. Ist nämlich eine ganze Menge, wenn ich das richtig gelesen habe.

    LG und mach weiter so. Das Tool ist sehr schön.

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 13:33
    Zitat von limette

    Danke =)
    Sorry wenn ich gestern Abend etwas schnell angepisst war ;)
    ...
    Da lagen bei mir einfach die Nerven blank, ...

    Ist doch schon (für mich auf jeden Fall) vergessen. Alzheimer-Gruß. ;)

    Zu dem anderen mit in 1-Byte-Schritte, da würde ich vorschlagen, das man es dann eher auf 10-Byte-Schritte abstuft. Aber ist von meiner Seite nur ein Vorschlag.

    Crazy-A

  • Bestimmte ordner suchen und kopieren

    • Alina
    • 7. Juni 2008 um 13:24

    Wenn ich Dich richtig verstanden habe, sollte Dir aus der AutoIt Doku (siehe links) folgende Beispiele helfen:

    DirMove (Ordner verschieben):

    Spoiler anzeigen
    [autoit]


    DirMove("C:\My Documents", "C:\Backups\MyDocs")

    [/autoit]

    DirCopy (Ordner kopieren):

    Spoiler anzeigen
    [autoit]


    DirCopy("C:\My Documents", "C:\Backups\MyDocs", 1)

    [/autoit]

    FileCopy: (Datei/en kopieren):

    Spoiler anzeigen
    [autoit][/autoit] [autoit][/autoit] [autoit]

    FileCopy("C:\*.au3", "D:\mydir\*.*")

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

    ; method to copy a folder (with its contents)
    DirCreate("C:\new")
    FileCopy("C:\old\*.*", "C:\new\")

    [/autoit]

    Erklärungen findest Du unter: http://www.autoit.de/dokumentation/functions.htm Das sind die sog. Funktionsreferenzen und hier kannst Du auch nachlesen, wie Du dann die Ordner löschen kannst usw.

    Gruß, Crazy-A.

  • FTPUpload per InternetWriteFile

    • Alina
    • 7. Juni 2008 um 13:15

    Ui, das geht !!!!

    Aber ich bin ja foul. Datei öffnen und Variabeln eintragen.

    Ich habe es so nun getestet und das sogar mit "upload in ein Unterverzeichnis":

    Spoiler anzeigen
    [autoit]


    ; Daten na klar anpassen
    $server = "home.dknet.net"
    $username = "crazy"
    $password = "totalcrazy"
    ;$file = "public_html/testdatei.jpg" ; hier der / und nicht \
    ;$FileLocal = "E:\testdatei.jpg"

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

    $x = _FTP_Upload( $server, $username, $password, 'public_html/testdatei.jpg' , "E:\testdatei.jpg")
    MsgBox( 0, '', $x & '-' & @error )

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

    $x = _FTP_Upload( $server, $username, $password, 'public_html/testdatei2.jpg' , "E:\testdatei2.jpg")
    MsgBox( 0, '', $x & '-' & @error )

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

    Func _FTP_Upload( $server, $username, $password, $file,$FileLocal )
    #Region connect
    Local $aiWinInetDLL = DllOpen("wininet.dll"), $ai_InternetCloseHandle
    Local $ai_InternetOpen = DllCall($aiWinInetDLL, 'long', 'InternetOpen', 'str', 'PicTransfer', 'long', 1, 'str', '', 'str', '', 'long', 0)
    If @error Or $ai_InternetOpen[0] = 0 Then
    DllClose($aiWinInetDLL)
    SetError(-1)
    Return 0
    EndIf

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

    Local $i_ServerPort = 0, $l_Service = 1, $l_Context = 0, $l_InternetSession = $ai_InternetOpen[0]
    Local $ai_InternetConnect = DllCall($aiWinInetDLL , 'long', 'InternetConnect', 'long', $l_InternetSession, 'str', $server, 'int', $i_ServerPort, 'str', $username, 'str', $password, 'long', $l_Service, 'long', 0x08000000, 'long', $l_Context)
    If @error Or $ai_InternetConnect[0] = 0 Then
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetOpen[0])
    DllClose($aiWinInetDLL)
    SetError(-2)
    Return 0
    EndIf

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

    Local $ai_ftpopenfile = DllCall( $aiWinInetDLL , 'long', 'FtpOpenFile', 'long', $ai_InternetConnect[0], 'str', $file, 'dword', 0x40000000, 'dword', 0x02, 'dword', 0 )
    If @error Or $ai_ftpopenfile[0] = 0 Then
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetConnect[0])
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetOpen[0])
    DllClose($aiWinInetDLL)
    SetError(-3)
    Return 0
    EndIf
    #EndRegion

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

    #Region DataSend
    Local $fhandle = FileOpen($FileLocal,16)
    ;~ $buffer = FileRead( $fhandle )

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

    $glen = FileGetSize($FileLocal)
    $last = Mod($glen,100)
    $x = ($glen-$last)/100
    $buffer = DllStructCreate("byte[" & $x & "]")

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

    Dim $out, $i = 0, $result
    For $i = 1 To 101
    Select
    Case $i = 101 And $last > 0
    $x = $last
    Case $i = 101 And (Not $last)
    ExitLoop
    Case $glen = $last
    $x = $last
    $i = 101
    EndSelect
    DllStructSetData($buffer,1,FileRead($fhandle,$x))

    Local $ai_ftpwrite = DllCall( $aiWinInetDLL , 'int', 'InternetWriteFile', 'long', $ai_ftpopenfile[0], 'ptr', DllStructGetPtr($buffer), 'int', $x, 'dword*', $out )
    $result += $ai_ftpwrite[4]
    If @error Or $ai_ftpwrite[0] = 0 Then
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetConnect[0])
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetOpen[0])
    FileClose($fhandle)
    DllClose($aiWinInetDLL)
    SetError(-4)
    Return 0
    EndIf

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

    ToolTip( $i )
    Sleep( 20 )

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

    Next

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

    FileClose($fhandle)
    #EndRegion

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

    #region disconnect
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetConnect[0])
    $ai_InternetCloseHandle = DllCall($aiWinInetDLL , 'int', 'InternetCloseHandle', 'long', $ai_InternetOpen[0])
    If @error Or $ai_InternetCloseHandle[0] = 0 Then
    DllClose($aiWinInetDLL)
    SetError(-5)
    Return 0
    EndIf
    #EndRegion
    DllClose($aiWinInetDLL)
    Return 1
    EndFunc

    [/autoit]

    Und da ich ja eine foule Schnecke bin, habe ich gleich geprüft, ob man das auch gleich mit zwei und mehr Bildern durchlaufen lassen kann. Ja, nach jedem Bild einmal bestätigen und dann geht es weiter.


    Posting-Ergebnis:
    limette= super Posting
    progandy = super Lösung ; das Lösungsmittel möchte ich mal im Kopf haben, was Progandy "eingenommen" hat. :rofl: (Spass)

    LG, Crazy-A.

  • @OSBuild welche Antworten möglich??

    • Alina
    • 7. Juni 2008 um 10:01

    wenn ich es richtig verstanden habe am frühen Morgen, dann meinst Du nicht dieses hier, oder?
    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Das gibt es nämlich hier bereits im Forum.

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 6. Juni 2008 um 21:52

    Das ist eine ERNSTE, aber CRAZY Idee.
    Das meine ich echt ernst, weiß nur nicht ob es umsetzbar ist.

    Wenn es mit Textdateien geht, frage ich mich ob das geht, was mir gerade durch den Kopf geht.

    1.) Datei lokal aus test.jpg eine test.txt umbenennen

    2.) die test.txt uploaden

    3.) die test.txt auf dem Server umbenennen.

    Man, da muß es doch endlich mal eine Lsg. geben. FTP ist sowieso ein Thema, wo es immer wieder Fragen gibt. Wo sind die Profis, die da mal die Ideale Lsg für Dummis entwickeln.
    Hier zähle ich mich auch zu den Dummis, aber ich bin auch blond. :rofl:

    Crazy-A

  • FTPUpload per InternetWriteFile

    • Alina
    • 6. Juni 2008 um 18:51
    Zitat von limette

    Hättest du meinen Post ganz gelesen hättest du gemerkt
    ...
    ...
    das letzte was du mir vorwerfen kannst ist, ich hätte Sufu, Hilfe und Google ignoriert !


    limette
    Also, ich bin die letzte Userin, die anderen etwas vorwerft, dazu habe ich auch gar kein Recht.
    Der Hinweis zur SuFu und Hilfe war ein Tip, da dort einiges bezüglich Upload (auch Bildupload) zu finden ist.

    So, für mich ist hiermit dieses Thema beendet.

    Gruß, Crazy-A. X(

  • FTPUpload per InternetWriteFile

    • Alina
    • 6. Juni 2008 um 16:17

    Hallo.

    Du sollst ja auch kein Passwort oder Benutzername veröffentlichen. Nimmst einfach Sternchen und man sieht das Du daran gedacht hast.

    Schau Dir mal das Posting an: [ offen ] Automatisierung von bilder upload auf funpic

    Ansonsten gerne auch mal die SuFu und Hilfe verwenden und danach stehen wir gerne wieder zur Verfügung, so wir noch hier sind. Suchbegriffe wie "Bild", Bilder", "Bilder hochladen", usw. können sehr hilfreich sein.

    InternetWriteFile: ist das nicht eigentlich nur für Textdateien? Macht dich da mal bitte bei den Profis schlau. Oder frag mal über die Shoutbox nach. Ich bin mir da nämlich gar nicht so sicher, ob das auch für Bilder ist. Ansonsten ftp.au3

    Gruß, Crazy-A.

  • FTPUpload per InternetWriteFile

    • Alina
    • 6. Juni 2008 um 16:01

    Evtl. so?

    Spoiler anzeigen
    [autoit]


    $server = "server eintragen"
    $username = "username eintragen"
    $password = "passwort eintragen"
    $file = "file eintragen"

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

    $x = _FTP_Upload( $server, $username, $password, $file )
    MsgBox( 0, '', $x & '-' & @error )

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

    Func _FTP_Upload( $server, $username, $password, $file )
    #Region connect
    Local $ai_InternetOpen = DllCall('wininet.dll', 'long', 'InternetOpen', 'str', 'PicTransfer', 'long', 1, 'str', '', 'str', '', 'long', 0)
    If @error Or $ai_InternetOpen[0] = 0 Then
    SetError(-1)
    Return 0
    EndIf

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

    Local $i_ServerPort = 0, $l_Service = 1, $l_Context = 0, $l_InternetSession = $ai_InternetOpen[0]
    Local $ai_InternetConnect = DllCall('wininet.dll', 'long', 'InternetConnect', 'long', $l_InternetSession, 'str', $server, 'int', $i_ServerPort, 'str', $username, 'str', $password, 'long', $l_Service, 'long', 0x08000000, 'long', $l_Context)
    If @error Or $ai_InternetConnect[0] = 0 Then
    SetError(-2)
    Return 0
    EndIf

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

    Local $ai_ftpopenfile = DllCall( 'wininet.dll', 'long', 'FtpOpenFile', 'long', $ai_InternetConnect[0], 'str', $file, 'dword', '0x40000000', 'dword', 0x02, 'dword', 0 )
    If @error Or $ai_ftpopenfile[0] = 0 Then
    SetError(-3)
    Return 0
    EndIf
    #EndRegion

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

    #Region DataSend
    $buffer = FileRead( $file )
    $glen = StringLen( $buffer )
    $x = Int( $glen/100 )
    If $x = 0 Then $x = 1
    Dim $out, $i = 0
    Do
    Local $ai_ftpwrite = DllCall( 'wininet.dll', 'int', 'InternetWriteFile', 'long', $ai_ftpopenfile[0], 'str', $buffer, 'int', $x, 'dword*', $out )
    If @error Or $ai_ftpwrite[0] = 0 Then
    SetError(-4)
    Return 0
    EndIf
    $buffer = StringTrimLeft( $buffer, $x )
    $i = $i +1
    ToolTip( Round( 100 - (( StringLen( $buffer ) / $glen ) *100), 0 ) )
    Sleep( 20 )
    Until StringLen( $buffer ) = 0
    #EndRegion

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

    #region disconnect
    Local $ai_InternetCloseHandle = DllCall('wininet.dll', 'int', 'InternetCloseHandle', 'long', $ai_InternetOpen[0])
    If @error Or $ai_InternetCloseHandle[0] = 0 Then
    SetError(-5)
    Return 0
    EndIf
    #EndRegion
    Return 1
    EndFunc

    [/autoit]

    Aber sicher bin ich mir da nicht. Ist so aus dem Handgelenk heraus.
    So bekommst bei drücken von F5 auf keinen Fall mehr eine Fehlermeldung.
    Du mußt schon gleiche Variablen verwenden !!!!

    Crazy-A

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™