Upload Image auf Imageshack.us

  • Hallo,


    ich habe ein Skript vor langer Zeit gefunden, welches Bilder auf Imageshack.us uploaden kann. Jetzt funktioniert das aber nicht mehr.. kann man das Skript wieder zum laufen bringen, oder gibt es andere Skripts wo Ich Bilder im Hintergrund uploaden kann?


    Skript:


    [autoit]

    ;~ =================> Imageshack Uploader

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

    Func _UploadTo_Imageshack($sFile, $sFlag = 0, $iRet_Type = 0)

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

    $sLocalFile = $sFile ;Local file

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

    $sHost = 'http://imageshack.us' ;Upload page addresss

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

    $sFormAction = '/upload_api.php' ;Upload form action ("form action=...upload.php)"

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

    $sFormName = 'fileupload' ;Upload form name ("input name=uploadfile")

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

    $sResponse = _TCPFileUpload($sLocalFile, $sHost, $sFormAction, $sFormName)

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

    Local $aRet[4] = _

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

    [ _

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

    StringRegExpReplace($sResponse, '(?is).*<(image_link)>(.*?).*', '\2'), _

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

    StringRegExpReplace($sResponse, '(?is).*<(image_html)>(.*?).*', '\2'), _

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

    StringRegExpReplace($sResponse, '(?is).*<(image_bb)>(.*?).*', '\2'), _

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

    StringRegExpReplace($sResponse, '(?is).*<(image_bb2)>(.*?).*', '\2') _

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

    ]

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

    If $sFlag = 1 Then FileDelete($sFile)

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

    Return $aRet[$iRet_Type]

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

    EndFunc

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

    Func _TCPFileUpload($sLocalFile, $sHost, $sFormAction, $sFormName)

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

    Local $sFileRead, $sFileType, $sBoundary, $sData, $iDataSize, $sHeader, $sCommand, $iSocket, $sRecv

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

    $sHost = StringRegExpReplace($sHost, '(?i)^https?://', '')

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

    $sFileRead = FileRead($sLocalFile)

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

    $sFileType = StringRegExpReplace($sLocalFile, '^.*\.', '')

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

    If $sFileType = 'jpg' Then $sFileType = 'jpeg'

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

    $sBoundary = StringFormat('----------------%s%s%smzF', @MIN, @HOUR, @SEC)

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

    $sData = '--' & $sBoundary & @CRLF & _

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

    'Content-Disposition: form-data; name="' & $sFormName & '"; filename="' & StringRegExpReplace($sLocalFile, '^.*\\', '') & '"' & @CRLF & _

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

    'Content-Type: image/' & $sFileType & @CRLF & @CRLF & _

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

    $sFileRead & @CRLF & '--' & $sBoundary & '--' & @CRLF

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

    $iDataSize = StringLen($sData)

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

    $sHeader = 'POST ' & $sFormAction & ' HTTP/1.1' & @CRLF & _

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

    'Host: ' & $sHost & @CRLF & _

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

    'Connection: close' & @CRLF & _

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

    'Content-Type: multipart/form-data; boundary=' & $sBoundary & @CRLF & _

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

    'Content-Length: ' & $iDataSize & @CRLF & @CRLF

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

    $sCommand = $sHeader & $sData

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

    TCPStartup()

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

    $iSocket = TCPConnect(TCPNameToIP($sHost), 80)

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

    TCPSend($iSocket, $sCommand)

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

    While 1

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

    $sRecv &= TCPRecv($iSocket, 20000)

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

    If StringLen($sRecv) <> 0 Then ExitLoop

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

    Sleep(50)

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

    WEnd

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

    TCPShutdown()

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

    Return $sRecv

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

    EndFunc

    [/autoit]


    Fehlermeldung:

    Einmal editiert, zuletzt von SYY99 (5. Mai 2012 um 00:26)

  • Einfach mal auf den Link klicken in der Fehlermeldung hilft manchmal Wunder ;).

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • ja, das habe Ich schon gemacht, aber Ich hab keine Ahnung was Ich damit anfangen soll :/

  • mit dem key von imageshack selbst geht es:

    [autoit]

    <input type="hidden" name="key" value="07AHPRSUb540e13d31461ec4d69d5fc122bd5ab7"/>

    [/autoit]

    musste halt nur irgendwie in die funktion integrieren

  • und wie kann ich das machen? Ich habe so ziemlich keine Ahnung von dem Zeug das im Skript steht.

  • hab hier mal n komplettscript zum bild-upload auf verschiedene hoster:

    Spoiler anzeigen
    [autoit]

    #RequireAdmin
    #RequireAdmin
    #include <StaticConstants.au3>
    #include <EditConstants.au3>
    #include <ComboConstants.au3>
    #include <GuiConstants.au3>
    #include <WindowsConstants.au3>
    #include <IE.au3>
    #Include <Misc.au3>
    #include <Constants.au3>
    #include <INet.au3>
    #Include <GuiButton.au3>
    #Include <Clipboard.au3>
    #include <GDIPlus.au3>
    #include <GDIP.au3>
    #include <file.au3>
    #include <GUIConstantsEx.au3>
    Break(0)
    Opt("TrayAutoPause",0)
    Opt("WinTitleMatchMode", 2)
    global $datei4cnt = 0, $waiting = 0, $shack, $dialog, $cprot, $c45, $newcurl, $ip, $opt3, $chars
    filedelete(@TempDir & "\_curlrc")
    FileInstall("curl.exe", @TempDir & "\curl.exe", 1)
    FileInstall("a2.jpg", @TempDir & "\a2.jpg", 1)
    _IEErrorHandlerRegister ()
    _IELoadWaitTimeout (1000)
    $oIE = _IECreateEmbedded ()
    Opt ("TrayIconHide", 1)
    Opt("GuiOnEventMode", 1)
    $maingui = GuiCreate("PicLoad", 305, 273, -1, -1, -1, $WS_EX_ACCEPTFILES)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_Quit")
    GUIRegisterMsg(0x233, "WM_DROPFILES_FUNC")
    GUISetbkColor(0xe0e0e0)
    _ChangeWindowMessageFilterEx($maingui, 0x233, 1)
    _ChangeWindowMessageFilterEx($maingui, $WM_COPYDATA, 1)
    _ChangeWindowMessageFilterEx($maingui, 0x0049, 1)
    Func _ChangeWindowMessageFilterEx($hWnd, $iMsg, $iAction)
    Local $aCall = DllCall("user32.dll", "bool", "ChangeWindowMessageFilterEx", _
    "hwnd", $hWnd, _
    "dword", $iMsg, _
    "dword", $iAction, _
    "ptr", 0)
    If @error Or Not $aCall[0] Then Return SetError(1, 0, 0)
    Return 1
    EndFunc
    Func WM_DROPFILES_FUNC($hWnd, $msgID, $wParam, $lParam)
    Switch $hWnd
    Case $mainGUI
    Local Const $tagPOINT = "int X;int Y"
    Local $tPOINT = DllStructCreate($tagPOINT), $iX, $iY
    Local $aRET, $hCtrl, $nSize, $tFileName
    $aRET = DllCall("shell32.dll", "int", "DragQueryPoint", "hwnd", $wParam, "ptr", DllStructGetPtr($tPOINT))
    $iX = DllStructGetData($tPOINT, "X")
    $iY = DllStructGetData($tPOINT, "Y")
    If ($iX >= 157) And ($iX <= 157 + 143) And ($iY >= 5) And ($iY <= 5 + 80) Then
    $datei4pre = ""
    $aRET = DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", 0xFFFFFFFF, "ptr", 0, "int", 255)
    For $i = 0 to $aRET[0] - 1
    $nSize = DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", $i, "ptr", 0, "int", 0)
    $nSize = $nSize[0] + 1
    $tFileName = DllStructCreate("char[" & $nSize & "]")
    DllCall("shell32.dll", "int", "DragQueryFile", "hwnd", $wParam, "int", $i, "ptr", DllStructGetPtr($tFileName), "int", $nSize)
    $datei4pre &= DllStructGetData($tFileName, 1) & "|"
    $tFileName = 0
    Next
    $datei4pre = StringTrimRight($datei4pre, 1)
    if StringInStr($datei4pre, "\AppData\Local\Temp\") and StringInStr($datei4pre, ":\", 0, 1, 5) < 8 then
    FileCopy($datei4pre, @TempDir & "\urldrop." & StringRight($datei4pre, 3), 1)
    $datei4pre = @TempDir & "\urldrop." & StringRight($datei4pre, 3)
    endif
    if $datei4cnt = 0 and $waiting = 0 and GUICtrlRead($shack) = "Datei" then
    if StringInStr($datei4pre, ":\", 0, 1, 5) > 8 then
    $i = StringLeft($datei4pre, StringInStr($datei4pre, "|"))
    $i = StringLeft($i, StringInStr($i, "\", 0, -1))
    $datei4pre = StringReplace($datei4pre, $i, "")
    $datei4pre = StringTrimRight($i, 1) & "|" & $datei4pre
    endif
    $datei4cnt = 1
    $4c1 = 1
    $4c2 = StringLeft ($datei4pre, stringinstr ($datei4pre, "|") - 1) & "\"
    $datei4pre = StringTrimLeft ($datei4pre, stringinstr ($datei4pre, "|"))
    _tv($shack, "Datei")
    endif
    Endif
    EndSwitch
    EndFunc

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

    $cl2 = GUICtrlCreateCombo ("abload.de", 4, 4, 121, 10, $CBS_DROPDOWNLIST)
    GUICtrlSetData(-1,"imagebanana.com|imageshack.us|img-teufel.de|directupload.net|pic-upload.de", "abload.de")
    $shack = GuiCtrlCreateButton("Datei", 3, 50, 70, 24)
    GUICtrlSetOnEvent($shack, "_shack")
    $c09 = GuiCtrlCreateLabel("• • Bereit • •", 152, 107, 150, 14, $SS_CENTER);bereit anzeige
    GUICtrlSetColor(-1, 0x0077c4)
    $oIEp = _IECreateEmbedded ()
    $c21 = GUICtrlCreateObj($oIEp, 157, 5, 143, 80)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $oIEp.navigate("about:blank")
    $c21l = GUICtrlCreateLabel("",157, 5, 143, 80)
    GUICtrlSetState(-1, $GUI_DROPACCEPTED)
    $c16 = GuiCtrlCreateEdit("", 0, 123, 305, 150);176)
    GUICtrlSetBkColor (-1,0xFDFBB7)
    $cprot = GUICtrlCreateLabel("", 192, 91, 60, 14, $SS_CENTER)
    GUICtrlSetFont (-1, 9, 800)
    $clh = GuiCtrlCreatebutton("Clear", 3, 100, 40, 20, $GUI_SS_DEFAULT_BUTTON)
    GUICtrlSetOnEvent($clh, "_historyclear")
    repic(@TempDir & "\a2.jpg", 144, 81, 1)
    GuiSetState(@sw_show, $maingui)

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

    func repic($rp, $rp1, $rp2, $rp3)
    if $rp = @TempDir & "\a2.jpg" then
    $oIEp.document.write("<body oncontextmenu='return false' scroll='no' style='border:0;margin-top:0px; margin-left:0px;background-image:url("&@TempDir & "\a2.jpg)'><img src ='" & @TempDir & "\a2.jpg' width='144' height='81' alt=''/></body>")
    else
    _GDIPlus_Startup()
    $hImage = _GDIPlus_ImageLoadFromFile($rp)
    $Width = _GDIPlus_ImageGetWidth($hImage)
    $Height = _GDIPlus_ImageGetHeight($hImage)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_Shutdown()
    $i = $rp1
    $xa = $Width / $rp1
    $tip = "";$Width&" * "&$Height&" Pixel"
    while $Height / $xa > $rp2
    $i -= 1
    $xa = $Width / $i
    wend
    $Width2 = $Width
    $Height2 = $Height
    if $Width > $rp1 or $Height > $rp2 then
    $Width2 = int($Width / $xa)
    $Height2 = int($Height / $xa)
    endif
    $Width3 = 0
    $Height3 = 0
    if int(($rp1 - $Width2) / 2) > 1 then $Width3 = int(($rp1 - $Width2) / 2)
    if int(($rp2 - $Height2) / 2) > 1 then $Height3 = int(($rp2 - $Height2) / 2)
    if $rp3 = 1 then
    $oIEp.document.write("<body oncontextmenu='return false' scroll='no' style='border:0;margin-top:"&$Height3&"px; margin-left:"&$Width3&"px;background-image:url("&@TempDir & "\a2.jpg)'><img src ='" & $rp & "' width='"&$Width2&"' height='"&$Height2&"' alt='"&$tip&"'/></body>")
    endif
    endif
    $oIEp.refresh
    endfunc

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

    While 1
    sleep(20)
    If stringinstr (GUICtrlRead($shack), "Cancel") > 0 Then
    if $waiting = 0 Then
    $typ = "..jpg"
    $fehler = 0
    $quest = 0
    _dis()
    if $datei4cnt = 0 then
    $datei4pre = FileOpenDialog("Browse...", $dialog, "Images (*.jpg;*.png;*.gif;*.bmp;*.tif)", 1 + 2 + 4)
    $datei4cnt = 1
    $4c1 = 1
    $4c2 = StringLeft ($datei4pre, stringinstr ($datei4pre, "|") - 1) & "\"
    $datei4pre = StringTrimLeft ($datei4pre, stringinstr ($datei4pre, "|"))
    endif
    while $4c1 > 0
    if stringinstr ($datei4pre, "|", 0, 1, $4c1) > 0 then
    $datei4cnt += 1
    $4c1 = stringinstr ($datei4pre, "|", 0, 1, $4c1) + 1
    else
    $4c1 = 0
    endif
    wend
    if $datei4cnt = 1 then
    $datei4 = $4c2 & $datei4pre
    if stringleft ($datei4, 1) = "\" then $datei4 = stringtrimleft ($datei4, 1)
    else
    $datei4 = $4c2 & StringLeft ($datei4pre, stringinstr ($datei4pre, "|") - 1)
    $datei4pre = StringTrimLeft ($datei4pre, stringinstr ($datei4pre, "|"))
    endif
    GUICtrlSetData($shack, "Cancel")
    GUICtrlSetData($cprot, "Queue: "&$datei4cnt)
    $dialog = StringLeft($datei4, StringInStr ($datei4, "\", 0, -1))
    $typ4 = StringRight ($datei4, 3)
    If @error Then
    $fehler = 0
    elseif $datei4cnt = 0 Then
    $fehler = 1
    elseif $typ4 <> "bmp" AND $typ4 <> "tif" AND $typ4 <> "jpg" AND $typ4 <> "png" AND $typ4 <> "gif" AND $typ4 <> "" then
    if $datei4cnt = 1 then MsgBox(16,"Fehler", "Unzulässige Datei!")
    $fehler=1
    elseif StringLen ($datei4) > 0 then
    if (StringLen ($datei4) - StringInStr ($datei4, "\", 0, -1)) > 20 OR StringInStr ($datei4, " ") > 0 then
    FileCopy ($datei4, @TempDir & "\ptmp." & $typ4, 1)
    $datei4 = @TempDir & "\ptmp." & $typ4
    endif
    else
    $fehler=1
    EndIf
    if $fehler=0 then
    FileDelete (@TempDir & "\curl.txt")
    _curl($datei4)
    repic($datei4, 144, 81, 1)
    $typ4 = "jpg"
    GUICtrlSetState ($shack, $GUI_ENABLE)
    If FileExists($datei4) Then
    GUICtrlSetState ($shack, $GUI_ENABLE)
    $typ = ".jpg"
    _d2()
    _load($shack)
    endif
    GUICtrlSetColor($c09, 0x0077c4)
    GUICtrlSetData ($c09, "• • Bereit • •")
    else
    $dialog = @WindowsDir & "\"
    EndIf
    $typ = StringRight ($datei4, 4)
    $datei4cnt -= 1
    if $datei4cnt <= 0 Then
    $datei4cnt = 0
    _en()
    endif
    $typ4 = ""
    $waiting = 0
    EndIf
    if $datei4cnt = 0 then
    GUICtrlSetData($shack, "Datei")
    GUICtrlSetData($cprot, "")
    endif
    EndIf
    WEnd

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

    Func _Quit()
    if msgbox(68,"PicLoad","Wirklich beenden?") = 6 then
    Exit
    endif
    EndFunc

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

    func _picfile()
    $i = 0
    while not FileExists($datei4)
    sleep(20)
    $i += 1
    if $i > 150 then ExitLoop
    WEnd
    endfunc

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

    Func _shack()
    _tv($shack, "Datei")
    EndFunc
    Func _tv($tv1, $tv2)
    Switch GUICtrlRead($tv1)
    Case $tv2
    $ip = 0
    if $waiting = 0 Then GUICtrlSetData($tv1, "Cancel")
    Case else
    _exx()
    GUICtrlSetData($tv1, $tv2)
    EndSwitch
    EndFunc

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

    func _exx()
    $datei4cnt = 0
    $waiting = 0
    repic(@TempDir & "\a2.jpg", 144, 81, 1)
    FileDelete (@TempDir & "\curl.txt")
    GUICtrlSetData ($c09, "Abbruch bitte warten...")
    _en()
    endfunc
    func _historyclear()
    if stringlen(GUICtrlRead($c16)) > 0 and msgbox(68,"PicLoad","Liste Löschen?") = 6 then
    GUICtrlSetData($c16, "")
    repic(@TempDir & "\a2.jpg", 144, 81, 1)
    endif
    endfunc

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

    Func _curl($curl)
    $opt3 = GUICtrlRead($cl2)
    Switch $opt3
    Case "imageshack.us"
    $newcurl = '-F key=07AHPRSUb540e13d31461ec4d69d5fc122bd5ab7 -F fileupload=@"' & $curl & '" -H Expect: -o curl.txt --location-trusted --url "http://post.imageshack.us/"'
    Case "abload.de"
    $newcurl = '-F img0=@"' & $curl & '" -H Expect: -o curl.txt --url "http://www.abload.de/upload.php"'
    case "h4w.de"
    $newcurl = '-F andygo=@"' & $curl & '" -H Expect: -o curl.txt --url "http://www.h4w.de/upload.php"'
    Case "imagebanana.com"
    $newcurl = '-F upload[]=@"' & $curl & '" -F send=Hochladen! -H Expect: -o curl.txt --location-trusted --url "http://www.imagebanana.com/"'
    Case "pic-upload.de"
    $newcurl = '-F file=@"' & $curl & '" -F Submit=" Bild Hochladen" -H Expect: -o curl.txt --location-trusted --url "http://www.pic-upload.de/upload.php"'
    Case "directupload.net"
    $newcurl = '-F bilddatei=@"' & $curl & '" -H Expect: -o curl.txt --url "http://www.directupload.net/index.php?mode=upload"'
    Case "img-teufel.de"
    $newcurl = '-F upload_image=@"' & $curl & '" -H Expect: -o curl.txt --url "http://www.img-teufel.de/upload.html"'
    Case Else
    Exit MsgBox(16, "Fehler", "Curl Speicherüberlauf! Programm wird jetzt beendet!")
    EndSwitch
    EndFunc

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

    Func _d2()
    $skb = (FileGetSize ($datei4) / 1024)
    local $foo = Run(FileGetShortName(@TempDir) & "\curl.exe " & $newcurl, FileGetShortName(@TempDir) & "\", @SW_HIDE, $STDERR_CHILD), $line
    While $ip = 0 and ProcessExists ("curl.exe")
    $line = StderrRead($foo)
    $line = StringRegExp($line, '\d+', 3)
    if NOT @error then
    if $line[0] = 100 then $line[0] = 99
    GUICtrlSetData ($c09, "uploading " & $line[0] & " %")
    endif
    sleep(50)
    if $waiting = 0 then exitloop
    Wend
    Processclose ("curl.exe")
    GUICtrlSetData ($c09, "uploading 100 %")
    if FileExists (@TempDir & "\curl.txt") = 0 Then FileInstall("dummy", @TempDir & "\curl.txt", 1)
    EndFunc

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

    func _load($ldi)
    Local $file1 = FileOpen(@TempDir & "\curl.txt", 0)
    $chars = FileRead($file1)
    FileClose($file1)
    _filter()
    if stringlen ($chars) > 100 then $chars = "Error"
    ClipPut($chars)
    GUICtrlSetData($c16, GUICtrlRead($c16) & @CRLF & $chars & @CRLF)
    EndFunc

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

    func _dis()
    $waiting = 1
    ClipPut ("")
    GUICtrlSetColor($c09,0xff0000)
    GUICtrlSetData ($c09, "preparing upload...")
    $orglink = ""
    EndFunc
    func _en()
    GUICtrlSetData ($c09, "• • Bereit • •")
    EndFunc

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

    func _filter()
    if $opt3 = "imageshack.us" then
    $result = StringInStr($chars, "url_image_path"" value=""")
    $chars = StringTrimLeft($chars, $result + 22)
    $result = StringInStr($chars, """")
    $res2 = StringLen ($chars)
    $chars = StringTrimRight($chars, $res2 - $result + 1)
    $result = StringInStr($chars, "/")
    $res2 = StringLeft ($chars, $result -1)
    $chars = "http://" & $res2 & ".imageshack.us/" & $chars
    elseif $opt3 = "abload.de" then
    $result = StringInStr($chars, "&quot;;}}")
    $res2 = StringLen ($chars)
    $chars = StringTrimRight($chars, $res2 - $result + 1)
    while StringInStr($chars, ":&quot;") > 0
    $res2 = StringInStr($chars, ":&quot;")
    $chars = StringTrimLeft($chars, $res2 + 6)
    wend
    $chars = "http://www.abload.de/img/" & $chars
    elseif $opt3 = "imagebanana.com" then
    $result = StringInStr($chars, "]")
    $res2 = StringLen ($chars)
    $chars = StringTrimRight($chars, $res2 - $result + 1)
    elseif $opt3 = "img-teufel.de" then
    $result = StringInStr($chars, "[Blockierte Grafik: http://www.img-teufel.de/uploads/&quot;)<br>%20%20%20%20%20%20%20%20%24chars%20=%20StringTrimLeft(%24chars,%20%24result%20+%204)<br>%20%20%20%20%20%20%20%20%24result%20=%20StringInStr(%24chars,%20&quot;]")
    $res2 = StringLen ($chars)
    $chars = StringTrimRight($chars, $res2 - $result + 1)
    Else
    exit MsgBox(16, "Fehler", "Filter Speicherüberlauf! Programm wird jetzt beendet!")
    EndIf
    endfunc

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

    Eine oder gleich mehrere Dateien können entweder per Datei-Button gewählt werden oder mit Drag&Drop in das Bildfeld gezogen werden.
    Rest passiert dann automatisch.