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. Sen

Beiträge von Sen

  • Offizieller Logo-Wettbewerb

    • Sen
    • 19. Dezember 2009 um 21:33

    Blub.
    Download: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Besser? :P

    Dateien

    AutoItLogo.zip 81,06 kB – 265 Downloads
  • Offizieller Logo-Wettbewerb

    • Sen
    • 19. Dezember 2009 um 18:19

    Langeweile.
    Als .zip da die Psd etc mit drin hängt.

    Download: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Dateien

    Logo.zip 122,84 kB – 291 Downloads
  • Shoutbox Chat

    • Sen
    • 18. Dezember 2009 um 16:57

    Bump. :D

    Mit der neuen Beta/Stable läufts:

    Spoiler anzeigen
    [autoit]


    ;==============================================================
    ; ShoutBox Chat
    ;==============================================================
    ; Author: Progandy / Greek
    ; Little Changes: Sen
    ; Version: 2.4+
    ;==============================================================
    ; Sidenote:
    ; You need newest Beta for AdlibRegister/OnAutoItExitRegister
    ;==============================================================
    #include <ButtonConstants.au3>
    #include <WinHTTP.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <Constants.au3>
    #include <String.au3>
    #include <Date.au3>
    #include <IE.au3>
    #include <Array.au3>
    #include <WinAPI.au3>

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

    #Region StartUp
    OnAutoItExitRegister("CloseAllHandles")
    AdlibRegister("_GetNewestPostAd", 5000)
    Global $__LASTMESSAGE = 0, $hw_connect, $hw_open, $LogOutLink = ""
    Global $_LOGIN_Cookie = IniRead("ShoutBoxClient.ini", "Data", "LogInData", "")
    DirCreate(@ScriptDir & "\ShoutBoxLog\")
    #EndRegion StartUp

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

    #Region GUI
    Opt("GUIResizeMode", 802)
    $MainGUI = GUICreate("Shoutbox Chat", 700, 380, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_CLIPCHILDREN))
    $oIE = _IECreateEmbedded()
    $ChatAnzeige = GUICtrlCreateObj($oIE, 0, 0, 550, 300)

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

    $Benutzername = GUICtrlCreateInput(IniRead("ShoutBoxClient.ini", "Data", "User", ""), 574, 5, 120, 20)
    $Passwort = GUICtrlCreateInput("", 574, 25, 120, 20, $ES_PASSWORD)
    $Einloggen = GUICtrlCreateButton("Einloggen", 574, 45, 120, 24)
    $Ausloggen = GUICtrlCreateButton("Ausloggen", 574, 45, 120, 24)
    GUICtrlSetState($Ausloggen, $GUI_HIDE)

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

    $Absenden = GUICtrlCreateButton("&Absenden", 440, 300, 110, 24)
    GUICtrlSetState($Absenden, $GUI_DISABLE)
    $Aktualisieren = GUICtrlCreateButton("Aktualisieren (F5)", 440, 328, 110, 24)
    $Speichern = GUICtrlCreateButton("Speichern", 440, 356, 110, 24)

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

    $Text = GUICtrlCreateEdit("", 0, 300, 440, 80, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL))

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

    $btnExpandHide = GUICtrlCreateButton("<", 550, 0, 19, 380)
    $WhisperList = GUICtrlCreateList("", 569, 71, 131, 309)
    $TopMost = GUICtrlCreateCheckbox("TopMost", 599, 365, 131, 15)

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

    If IniRead("ShoutBoxClient.ini", "Data", "OnTop", "") = "True" Then
    WinSetOnTop($MainGUI, "", 1)
    GUICtrlSetState($TopMost, $GUI_CHECKED)
    EndIf
    If IniRead("ShoutBoxClient.ini", "Data", "ShowOnline", "True") = "False" Then
    _ShowOnlineList(False)
    EndIf

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

    ;Color/Bk Settings
    GUICtrlSetBkColor($Benutzername, 0xF2F6FA)
    GUICtrlSetColor($Benutzername, 0x000000)
    GUICtrlSetBkColor($Passwort, 0xF2F6FA)
    GUICtrlSetColor($Passwort, 0x000000)
    GUICtrlSetBkColor($Text, 0xF2F6FA)
    GUICtrlSetColor($Text, 0x000000)
    GUICtrlSetBkColor($WhisperList, 0xF2F6FA)
    GUICtrlSetColor($WhisperList, 0x000000)

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

    WinRunTrans($MainGUI, "Show")
    #EndRegion GUI

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

    #Region Settings
    $ClearDUMMY = GUICtrlCreateDummy()
    Local $Accels[4][2] = [["^{F5}", $Aktualisieren],["{F5}", $Aktualisieren],["{ENTER}", $Absenden],["{ESC}", $ClearDUMMY]]
    GUISetAccelerators($Accels)

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

    Global $rLastText = ""
    Global $hw_open = _WinHttpOpen("AutoIt ShoutBoxClient")
    Global $hw_connect = _WinHttpConnect($hw_open, "autoit.de")

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

    _IENavigate($oIE, "about:blank")
    _IEDocWriteHTML($oIE, '<html><head><script type="text/javascript">document.oncontextmenu = function(e){return false;};</script><base href="http://autoit.de/"><link rel="stylesheet" type="text/css" media="screen" href="wcf/style/style-3.css" /></head><body style="margin:0px; padding:0px;"><div class="shoutboxMessageFrame shoutboxFrameInner container-2" style="margin:0px; padding:0px; position:absolute; top:0px; left:0px; width:100%; height:100%;"><div id="shoutboxcontent" class="shoutboxMessageFrame shoutboxFrameInner container-2 smallFont" style="text-align:left; margin:0px; padding:0px;"></div></div></body></html>');
    Global $oShoutBox = _IEGetObjById($oIE, "shoutboxcontent")

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

    _TryLogInCookie()
    _GetNewestPost()
    $FirstStart = False
    #EndRegion Settings

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

    #Region Loop
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Einloggen
    $u = GUICtrlRead($Benutzername)
    $p = GUICtrlRead($Passwort)
    _Login($u, $p)
    Case $Ausloggen
    _LogOut()
    Case $Absenden
    If BitAND(GUICtrlGetState($Absenden), $GUI_DISABLE) = $GUI_DISABLE Then
    $u = GUICtrlRead($Benutzername)
    $p = GUICtrlRead($Passwort)
    _Login($u, $p)
    Else
    $rText = GUICtrlRead($Text)
    If $rText <> "" And $rText <> $rLastText Then
    $rLastText = StringRegExpReplace($rText, "\A(\/w)+", "")
    GUICtrlSetData($Text, "")
    GUICtrlSetData($WhisperList, "-------------")
    _Nachricht($rText)
    ControlFocus($MainGUI, "", $Text)
    EndIf
    EndIf
    Case $Aktualisieren
    _GetNewestPost()
    Case $ClearDUMMY
    GUICtrlSetData($WhisperList, "-------------")
    GUICtrlSetData($Text, "")
    Case $Speichern
    _SaveLog()
    Case $WhisperList
    $WTarget = GUICtrlRead($WhisperList)
    If $WTarget = "-------------" Or $WTarget = "" Then
    GUICtrlSetData($Text, StringRegExpReplace(GUICtrlRead($Text), '\A\/w ".*?"\h?', ""))
    ;~ GUICtrlSetData($Text, StringRegExpReplace(GUICtrlRead($Text),'\A".*?"\h?',""))
    Else
    GUICtrlSetData($Text, '/w "' & $WTarget & '" ' & StringRegExpReplace(GUICtrlRead($Text), '\A\/w ".*?"\h?', ""))
    ;~ GUICtrlSetData($Text, '"' & $WTarget&'" '&StringRegExpReplace(GUICtrlRead($Text),'\A".*?"\h?',""))
    EndIf
    Case $TopMost
    Local $Attrib = BitAND(GUICtrlRead($TopMost), $GUI_CHECKED) = $GUI_CHECKED
    IniWrite("ShoutBoxClient.ini", "Data", "OnTop", $Attrib)
    WinSetOnTop($MainGUI, "", $Attrib)
    Case $btnExpandHide
    Switch GUICtrlRead($btnExpandHide)
    Case "<"
    _ShowOnlineList(False)
    Case ">"
    _ShowOnlineList(True)
    EndSwitch
    EndSwitch
    WEnd
    #EndRegion Loop

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

    #Region Func's
    Func _SaveLog()
    $LogPath = @ScriptDir & "\ShoutBoxLog\" & @YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & "-" & @MIN & "-" & @SEC & ".htm"
    FileWrite($LogPath, _IEDocReadHTML($oIE))
    EndFunc ;==>_SaveLog

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

    Func _ShowOnlineList($Show)
    Local $pos = WinGetPos($MainGUI)
    Switch $Show
    Case False
    GUICtrlSetData($btnExpandHide, ">")
    WinMove($MainGUI, "", $pos[0], $pos[1], $pos[2] - 131, $pos[3])
    GUICtrlSetState($WhisperList, @SW_HIDE)
    GUICtrlSetState($TopMost, @SW_HIDE)
    Case True
    GUICtrlSetData($btnExpandHide, "<")
    WinMove($MainGUI, "", $pos[0], $pos[1], $pos[2] + 131, $pos[3])
    GUICtrlSetState($WhisperList, @SW_SHOW)
    GUICtrlSetState($TopMost, @SW_SHOW)
    EndSwitch
    IniWrite("ShoutBoxClient.ini", "Data", "ShowOnline", $Show = True)
    EndFunc ;==>_ShowOnlineList

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

    Func _Reconnect()
    ; Prog@ndy
    _WinHTTPCloseHandle($hw_connect)
    Global $hw_connect = _WinHttpConnect($hw_open, "autoit.de")
    Global $_LOGIN_Cookie = IniRead("ShoutBoxClient.ini", "Data", "LogInData", "")
    EndFunc ;==>_Reconnect

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

    Func CloseAllHandles()
    _WinHTTPCloseHandle($hw_connect)
    _WinHTTPCloseHandle($hw_open)
    EndFunc ;==>CloseAllHandles

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

    Func _AddLogIn($hRequest)
    If $_LOGIN_Cookie Then _WinHTTPAddRequestHeaders($hRequest, $_LOGIN_Cookie, BitOR($WINHTTP_ADDREQ_FLAG_ADD, $WINHTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON))
    EndFunc ;==>_AddLogIn

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

    Func _ShowLogOut()
    GUICtrlSetState($Einloggen, $GUI_HIDE)
    GUICtrlSetState($Ausloggen, $GUI_SHOW)
    GUICtrlSetState($Benutzername, $GUI_DISABLE)
    GUICtrlSetState($Passwort, $GUI_DISABLE)
    GUICtrlSetState($Absenden, $GUI_ENABLE)
    GUICtrlSetState($Text, $GUI_ENABLE)
    EndFunc ;==>_ShowLogOut
    Func _LogOut()
    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", $LogOutLink, "HTTP/1.1")
    _AddLogIn($h_openRequest)
    _WinHttpSendRequest($h_openRequest)
    _WinHttpReceiveResponse($h_openRequest)
    _WinHTTPCloseHandle($h_openRequest)
    GUICtrlSetState($Einloggen, $GUI_SHOW)
    GUICtrlSetState($Ausloggen, $GUI_HIDE)
    GUICtrlSetState($Benutzername, $GUI_ENABLE)
    GUICtrlSetState($Passwort, $GUI_ENABLE)
    GUICtrlSetState($Absenden, $GUI_DISABLE)
    GUICtrlSetState($Text, $GUI_DISABLE)
    $_LOGIN_Cookie = ""
    IniWrite("ShoutBoxClient.ini", "Data", "LogInData", "")
    EndFunc ;==>_LogOut
    Func _TryLogInCookie()
    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", "index.php", "HTTP/1.1")
    _AddLogIn($h_openRequest)

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

    _WinHttpSendRequest($h_openRequest)
    _WinHttpReceiveResponse($h_openRequest)
    Local $data
    Do
    $data &= _WinHTTPReadData($h_openRequest, 1)
    Until @extended = 0
    If $data = "" Then
    MsgBox(16, 'AutoIt ShoutBox Chat - Fehler', "Fehler bei der Verbindung zu http://www.autoit.de. Das Programm wird beendet")
    Exit
    EndIf
    _WinHTTPCloseHandle($h_openRequest)
    $LogOutLink = StringRegExp($data, "(action=UserLogout&(?:amp;)?t=[a-zA-Z0-9]+)", 3)
    If Not @error Then
    _ShowLogOut()
    $LogOutLink = "/index.php?" & $LogOutLink[0]
    Else
    $LogOutLink = ""
    EndIf
    EndFunc ;==>_TryLogInCookie

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

    Func _Login($user, $pw)
    Local $post = "loginUsername=" & _URIEncode($user) & "&loginPassword=" & _URIEncode($pw) & "&url=%2Findex.php%3Fform%3DUserLogin&&x=7&y=7&useCookies=1"
    Local $h_openRequest = _WinHttpOpenRequest($hw_connect, "POST", "/index.php?form=UserLogin", "HTTP/1.1", "http://www.autoit.de/")
    _WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded" & @CRLF, $post)
    _WinHttpReceiveResponse($h_openRequest)
    Local $header = "", $Index = 0
    Do
    $header &= _WinHttpQueryHeadersEx($h_openRequest, $WINHTTP_QUERY_SET_COOKIE, $WINHTTP_HEADER_NAME_BY_INDEX, $Index)
    $Index = @extended
    Until $Index = 0
    $header = StringRegExp($header, "(wcf_.*?;)", 3)
    Local $CookieString = "Cookie:"
    For $i = 0 To UBound($header) - 1
    $CookieString &= " " & $header[$i]
    Next
    IniWrite("ShoutBoxClient.ini", "Data", "LogInData", $CookieString)
    IniWrite("ShoutBoxClient.ini", "Data", "User", $user)
    _WinHTTPCloseHandle($h_openRequest)
    _TryLogInCookie()
    EndFunc ;==>_Login

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

    Func _URIEncode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(BinaryToString(StringToBinary($sData, 4), 1), "")
    Local $nChar
    $sData = ""
    For $i = 1 To $aData[0]
    ;~ ConsoleWrite($aData[$i] & @CRLF)
    $nChar = Asc($aData[$i])
    Switch $nChar
    Case 45, 46, 48 - 57, 65 To 90, 95, 97 To 122, 126
    $sData &= $aData[$i]
    Case 32
    $sData &= "+"
    Case Else
    $sData &= "%" & Hex($nChar, 2)
    EndSwitch
    Next
    Return $sData
    EndFunc ;==>_URIEncode

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

    Func _URIDecode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(StringReplace($sData, "+", " ", 0, 1), "%")
    $sData = ""
    For $i = 2 To $aData[0]
    $aData[1] &= Chr(Dec(StringLeft($aData[$i], 2))) & StringTrimLeft($aData[$i], 2)
    Next
    Return BinaryToString(StringToBinary($aData[1], 1), 4)
    EndFunc ;==>_URIDecode

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

    Func _GetNewestPostAd()
    _GetNewestPost()
    EndFunc ;==>_GetNewestPostAd

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

    Func _GetNewestPost($hRequest = -1)
    If $hRequest = -1 Then
    $hRequest = _WinHttpOpenRequest($hw_connect, "GET", "/index.php?page=ShoutboxContent&output=xml&since=" & $__LASTMESSAGE, "HTTP/1.1", "http://www.autoit.de/")
    _AddLogIn($hRequest)
    _WinHttpSendRequest($hRequest)
    EndIf
    _WinHttpReceiveResponse($hRequest)
    Local $data
    Do
    $data &= _WinHTTPReadData($hRequest, 1)
    Until @extended = 0
    _WinHTTPCloseHandle($hRequest)
    Local $LASTMESSAGE = StringRegExp($data, "<last>(.*?)</last>", 1)
    If IsArray($LASTMESSAGE) And $LASTMESSAGE[0] <> $__LASTMESSAGE Then
    $__LASTMESSAGE = $LASTMESSAGE[0]
    Local $messages = StringRegExp($data, "(?s)<line><!\[CDATA\[(.*?)\]\]></line>", 3)
    Local $insert = ""
    For $i = 0 To UBound($messages) - 1
    $insert &= $messages[$i] & "<br />" & @CRLF
    Next
    If StringLen($insert) Then
    _IEDocInsertHTML($oShoutBox, $insert)
    $oIE.Document.parentwindow.Scroll(0, 99999)
    $state = WinGetState("AutoIt Shoutbox Chat -- © by Greek und Prog@ndy")
    If BitAND($state, 16) Then
    $result = StringRegExp($insert, "javascript\:parent\.sbWhisperTo\('(.*?)'\);", 1)
    If IsArray($result) Then
    TrayTip("Shoutbox Client", "Neue Nachricht von: " & $result[0], 2, 1)
    Sleep(2000)
    EndIf
    EndIf
    EndIf
    _ReadOnlineList($data)
    EndIf
    EndFunc ;==>_GetNewestPost

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

    Func _ReadOnlineList(ByRef $data)
    Local $temp = GUICtrlRead($WhisperList)
    $data = StringRegExp($data, "(?s)<onlineList>.*?<a(.*)</onlineList>", 1)
    $data = StringRegExp($data[0], '">(?:<[^>]*>)*(.+?)(?:</[^>]*>)*?</a>', 3)
    GUICtrlSetData($WhisperList, "|-------------|" & _ArrayToString($data), $temp)
    EndFunc ;==>_ReadOnlineList

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

    Func _Nachricht($Text)
    $Text = _URIEncode($Text)
    ;$iDateCalc = _DateDiff( 's',"1970/01/01 00:00:00",_NowCalc())
    $h_openRequest2 = _WinHttpOpenRequest($hw_connect, "POST", "/index.php?page=ShoutboxContent&output=xml", "HTTP/1.1", "http://www.autoit.de/")
    _AddLogIn($h_openRequest2)
    _WinHttpSendRequest($h_openRequest2, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "since=" & $__LASTMESSAGE & "&message=" & $Text)
    _GetNewestPost($h_openRequest2)
    EndFunc ;==>_Nachricht

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

    Func _WinHttpQueryHeadersEx($hRequest, $iInfoLevel = $WINHTTP_QUERY_RAW_HEADERS_CRLF, $sName = $WINHTTP_HEADER_NAME_BY_INDEX, $Index = $WINHTTP_NO_HEADER_INDEX)
    Local $tpName = "wstr"
    If $sName = $WINHTTP_HEADER_NAME_BY_INDEX Then $tpName = "ptr"
    Local $struct = DllStructCreate("dword")

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

    Local $a_iCall = DllCall("winhttp.dll", "int", "WinHttpQueryHeaders", _
    "hwnd", $hRequest, _
    "dword", $iInfoLevel, _
    $tpName, $sName, _
    "ptr", 0, _
    "ptr", DllStructGetPtr($struct), _
    "dword*", $Index)

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

    If @error Or $a_iCall[0] Then
    Return SetError(1, 0, 0)
    EndIf

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

    Local $i_size = DllStructGetData($struct, 1)

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

    If Not $i_size Then
    Return SetError(0, 0, "")
    EndIf

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

    Local $lpBuffer = DllStructCreate("wchar[" & $i_size & "]")

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

    $a_iCall = DllCall("winhttp.dll", "int", "WinHttpQueryHeaders", _
    "hwnd", $hRequest, _
    "dword", $iInfoLevel, _
    $tpName, $sName, _
    "ptr", DllStructGetPtr($lpBuffer), _
    "ptr", DllStructGetPtr($struct), _
    "dword*", $Index)

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

    If @error Or Not $a_iCall[0] Then
    Return SetError(2, 0, 0)
    EndIf

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

    Return SetError(0, $a_iCall[6], DllStructGetData($lpBuffer, 1))
    EndFunc ;==>_WinHttpQueryHeadersEx

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

    Func WinRunTrans($Window, $Mod)
    If $Mod = "Show" Then
    WinSetTrans($Window, "", 0)
    GUISetState(@SW_SHOW, $Window)
    For $i = 0 To 255 Step 5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    ElseIf $Mod = "Hide" Then
    For $i = 255 To 0 Step -5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    GUISetState(@SW_HIDE, $Window)
    EndIf
    EndFunc ;==>WinRunTrans
    #EndRegion Func's

    [/autoit]
  • Blockinput unter Vista

    • Sen
    • 18. Dezember 2009 um 16:49

    Geht das ganze unter Vista/Win7 nicht einfach mit der Winlock.dll?

  • Random bmp Generator

    • Sen
    • 18. Dezember 2009 um 15:16
    Zitat

    Wenn dann

    While 1
    Sleep(50)
    WEnd

    Arg, stimmt :rofl:

  • Shoutbox Chat

    • Sen
    • 17. Dezember 2009 um 11:48

    Ich gucks mir eben nochmal an,
    bei mir läufts fehlerfrei o_O

    Das wundert mich grad etwas.

    Edit:

    Zitat

    >"C:\Programme\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /prod /AU3Check /in "D:\Desktop-Ordner\Autolt V3\Tools\ShoutBox\ShoutBox.au3"
    +>11:58:14 Starting AutoIt3Wrapper v.2.0.0.3 Environment(Language:0407 Keyboard:00000407 OS:WIN_XP/Service Pack 2 CPU:X86 OS:X86)
    >Running AU3Check (1.54.14.0) from:C:\Programme\AutoIt3
    +>11:58:15 AU3Check ended.rc:0
    +>11:58:15 AutoIt3Wrapper Finished
    >Exit code: 0 Time: 0.874

    Läuft bei mir fehlerfrei.
    Und auch der Syntax Check sagt nichts 8|

    Edit 2:
    Habs, ich fix das eben :D

    Edit 3:

    Zitat

    D:\Desktop-Ordner\Autolt V3\Tools\ShoutBox\ShoutBox.au3(15,36) : ERROR: Opt() called with illegal argument 1: "OnExitFunc"
    Opt("OnExitFunc", "CloseAllHandles")
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    D:\Desktop-Ordner\Autolt V3\Tools\ShoutBox\ShoutBox.au3(16,37) : ERROR: AdlibEnable(): undefined function.
    AdlibEnable("_GetNewestPostAd", 5000)

    Das wundert mich grad etwas.
    Er meckert an "OnExitFunc und AdLibEnable o_O

    Edit 4:
    Laut neuster Beta sollte es so laufen:

    Spoiler anzeigen
    [autoit]


    ;#BETA
    #include <ButtonConstants.au3>
    #include <WinHTTP.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <Constants.au3>
    #include <String.au3>
    #include <Date.au3>
    #include <IE.au3>
    #include <Array.au3>
    #include <WinAPI.au3>

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

    #Region StartUp
    OnAutoItExitRegister("CloseAllHandles")
    AdlibRegister("_GetNewestPostAd", 5000)
    Global $__LASTMESSAGE = 0, $hw_connect, $hw_open, $LogOutLink = ""
    Global $_LOGIN_Cookie = IniRead("ShoutBoxClient.ini", "Data", "LogInData", "")
    DirCreate(@ScriptDir & "\ShoutBoxLog\")
    #EndRegion StartUp

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

    #Region GUI
    Opt("GUIResizeMode", 802)
    $MainGUI = GUICreate("Shoutbox Chat", 700, 380, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_CLIPCHILDREN))
    $oIE = _IECreateEmbedded()
    $ChatAnzeige = GUICtrlCreateObj($oIE, 0, 0, 550, 300)

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

    $Benutzername = GUICtrlCreateInput(IniRead("ShoutBoxClient.ini", "Data", "User", ""), 574, 5, 120, 20)
    $Passwort = GUICtrlCreateInput("", 574, 25, 120, 20, $ES_PASSWORD)
    $Einloggen = GUICtrlCreateButton("Einloggen", 574, 45, 120, 24)
    $Ausloggen = GUICtrlCreateButton("Ausloggen", 574, 45, 120, 24)
    GUICtrlSetState($Ausloggen, $GUI_HIDE)

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

    $Absenden = GUICtrlCreateButton("&Absenden", 440, 300, 110, 24)
    GUICtrlSetState($Absenden, $GUI_DISABLE)
    $Aktualisieren = GUICtrlCreateButton("Aktualisieren (F5)", 440, 328, 110, 24)
    $Speichern = GUICtrlCreateButton("Speichern", 440, 356, 110, 24)

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

    $Text = GUICtrlCreateEdit("", 0, 300, 440, 80, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL))

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

    $btnExpandHide = GUICtrlCreateButton("<", 550, 0, 19, 380)
    $WhisperList = GUICtrlCreateList("", 569, 71, 131, 309)
    $TopMost = GUICtrlCreateCheckbox("TopMost", 599, 365, 131, 15)

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

    If IniRead("ShoutBoxClient.ini", "Data", "OnTop", "") = "True" Then
    WinSetOnTop($MainGUI, "", 1)
    GUICtrlSetState($TopMost, $GUI_CHECKED)
    EndIf
    If IniRead("ShoutBoxClient.ini", "Data", "ShowOnline", "True") = "False" Then
    _ShowOnlineList(False)
    EndIf

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

    ;Color/Bk Settings
    GUICtrlSetBkColor($Benutzername, 0xF2F6FA)
    GUICtrlSetColor($Benutzername, 0x000000)
    GUICtrlSetBkColor($Passwort, 0xF2F6FA)
    GUICtrlSetColor($Passwort, 0x000000)
    GUICtrlSetBkColor($Text, 0xF2F6FA)
    GUICtrlSetColor($Text, 0x000000)
    GUICtrlSetBkColor($WhisperList, 0xF2F6FA)
    GUICtrlSetColor($WhisperList, 0x000000)

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

    WinRunTrans($MainGUI, "Show")
    #EndRegion GUI

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

    #Region Settings
    $ClearDUMMY = GUICtrlCreateDummy()
    Local $Accels[4][2] = [["^{F5}", $Aktualisieren],["{F5}", $Aktualisieren],["{ENTER}", $Absenden],["{ESC}", $ClearDUMMY]]
    GUISetAccelerators($Accels)

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

    Global $rLastText = ""
    Global $hw_open = _WinHttpOpen("AutoIt ShoutBoxClient")
    Global $hw_connect = _WinHttpConnect($hw_open, "autoit.de")

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

    _IENavigate($oIE, "about:blank")
    _IEDocWriteHTML($oIE, '<html><head><script type="text/javascript">document.oncontextmenu = function(e){return false;};</script><base href="http://autoit.de/"><link rel="stylesheet" type="text/css" media="screen" href="wcf/style/style-3.css" /></head><body style="margin:0px; padding:0px;"><div class="shoutboxMessageFrame shoutboxFrameInner container-2" style="margin:0px; padding:0px; position:absolute; top:0px; left:0px; width:100%; height:100%;"><div id="shoutboxcontent" class="shoutboxMessageFrame shoutboxFrameInner container-2 smallFont" style="text-align:left; margin:0px; padding:0px;"></div></div></body></html>');
    Global $oShoutBox = _IEGetObjById($oIE, "shoutboxcontent")

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

    _TryLogInCookie()
    _GetNewestPost()
    $FirstStart = False
    #EndRegion Settings

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

    #Region Loop
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Einloggen
    $u = GUICtrlRead($Benutzername)
    $p = GUICtrlRead($Passwort)
    _Login($u, $p)
    Case $Ausloggen
    _LogOut()
    Case $Absenden
    If BitAND(GUICtrlGetState($Absenden), $GUI_DISABLE) = $GUI_DISABLE Then
    $u = GUICtrlRead($Benutzername)
    $p = GUICtrlRead($Passwort)
    _Login($u, $p)
    Else
    $rText = GUICtrlRead($Text)
    If $rText <> "" And $rText <> $rLastText Then
    $rLastText = StringRegExpReplace($rText, "\A(\/w)+", "")
    GUICtrlSetData($Text, "")
    GUICtrlSetData($WhisperList, "-------------")
    _Nachricht($rText)
    ControlFocus($MainGUI, "", $Text)
    EndIf
    EndIf
    Case $Aktualisieren
    _GetNewestPost()
    Case $ClearDUMMY
    GUICtrlSetData($WhisperList, "-------------")
    GUICtrlSetData($Text, "")
    Case $Speichern
    _SaveLog()
    Case $WhisperList
    $WTarget = GUICtrlRead($WhisperList)
    If $WTarget = "-------------" Or $WTarget = "" Then
    GUICtrlSetData($Text, StringRegExpReplace(GUICtrlRead($Text), '\A\/w ".*?"\h?', ""))
    ;~ GUICtrlSetData($Text, StringRegExpReplace(GUICtrlRead($Text),'\A".*?"\h?',""))
    Else
    GUICtrlSetData($Text, '/w "' & $WTarget & '" ' & StringRegExpReplace(GUICtrlRead($Text), '\A\/w ".*?"\h?', ""))
    ;~ GUICtrlSetData($Text, '"' & $WTarget&'" '&StringRegExpReplace(GUICtrlRead($Text),'\A".*?"\h?',""))
    EndIf
    Case $TopMost
    Local $Attrib = BitAND(GUICtrlRead($TopMost), $GUI_CHECKED) = $GUI_CHECKED
    IniWrite("ShoutBoxClient.ini", "Data", "OnTop", $Attrib)
    WinSetOnTop($MainGUI, "", $Attrib)
    Case $btnExpandHide
    Switch GUICtrlRead($btnExpandHide)
    Case "<"
    _ShowOnlineList(False)
    Case ">"
    _ShowOnlineList(True)
    EndSwitch
    EndSwitch
    WEnd
    #EndRegion Loop

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

    #Region Func's
    Func _SaveLog()
    $LogPath = @ScriptDir & "\ShoutBoxLog\" & @YEAR & "-" & @MON & "-" & @MDAY & "_" & @HOUR & "-" & @MIN & "-" & @SEC & ".htm"
    FileWrite($LogPath, _IEDocReadHTML($oIE))
    EndFunc ;==>_SaveLog

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

    Func _ShowOnlineList($Show)
    Local $pos = WinGetPos($MainGUI)
    Switch $Show
    Case False
    GUICtrlSetData($btnExpandHide, ">")
    WinMove($MainGUI, "", $pos[0], $pos[1], $pos[2] - 131, $pos[3])
    GUICtrlSetState($WhisperList, @SW_HIDE)
    GUICtrlSetState($TopMost, @SW_HIDE)
    Case True
    GUICtrlSetData($btnExpandHide, "<")
    WinMove($MainGUI, "", $pos[0], $pos[1], $pos[2] + 131, $pos[3])
    GUICtrlSetState($WhisperList, @SW_SHOW)
    GUICtrlSetState($TopMost, @SW_SHOW)
    EndSwitch
    IniWrite("ShoutBoxClient.ini", "Data", "ShowOnline", $Show = True)
    EndFunc ;==>_ShowOnlineList

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

    Func _Reconnect()
    ; Prog@ndy
    _WinHTTPCloseHandle($hw_connect)
    Global $hw_connect = _WinHttpConnect($hw_open, "autoit.de")
    Global $_LOGIN_Cookie = IniRead("ShoutBoxClient.ini", "Data", "LogInData", "")
    EndFunc ;==>_Reconnect

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

    Func CloseAllHandles()
    _WinHTTPCloseHandle($hw_connect)
    _WinHTTPCloseHandle($hw_open)
    EndFunc ;==>CloseAllHandles

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

    Func _AddLogIn($hRequest)
    If $_LOGIN_Cookie Then _WinHTTPAddRequestHeaders($hRequest, $_LOGIN_Cookie, BitOR($WINHTTP_ADDREQ_FLAG_ADD, $WINHTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON))
    EndFunc ;==>_AddLogIn

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

    Func _ShowLogOut()
    GUICtrlSetState($Einloggen, $GUI_HIDE)
    GUICtrlSetState($Ausloggen, $GUI_SHOW)
    GUICtrlSetState($Benutzername, $GUI_DISABLE)
    GUICtrlSetState($Passwort, $GUI_DISABLE)
    GUICtrlSetState($Absenden, $GUI_ENABLE)
    GUICtrlSetState($Text, $GUI_ENABLE)
    EndFunc ;==>_ShowLogOut
    Func _LogOut()
    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", $LogOutLink, "HTTP/1.1")
    _AddLogIn($h_openRequest)
    _WinHttpSendRequest($h_openRequest)
    _WinHttpReceiveResponse($h_openRequest)
    _WinHTTPCloseHandle($h_openRequest)
    GUICtrlSetState($Einloggen, $GUI_SHOW)
    GUICtrlSetState($Ausloggen, $GUI_HIDE)
    GUICtrlSetState($Benutzername, $GUI_ENABLE)
    GUICtrlSetState($Passwort, $GUI_ENABLE)
    GUICtrlSetState($Absenden, $GUI_DISABLE)
    GUICtrlSetState($Text, $GUI_DISABLE)
    $_LOGIN_Cookie = ""
    IniWrite("ShoutBoxClient.ini", "Data", "LogInData", "")
    EndFunc ;==>_LogOut
    Func _TryLogInCookie()
    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", "index.php", "HTTP/1.1")
    _AddLogIn($h_openRequest)

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

    _WinHttpSendRequest($h_openRequest)
    _WinHttpReceiveResponse($h_openRequest)
    Local $data
    Do
    $data &= _WinHTTPReadData($h_openRequest, 1)
    Until @extended = 0
    If $data = "" Then
    MsgBox(16, 'AutoIt ShoutBox Chat - Fehler', "Fehler bei der Verbindung zu http://www.autoit.de. Das Programm wird beendet")
    Exit
    EndIf
    _WinHTTPCloseHandle($h_openRequest)
    $LogOutLink = StringRegExp($data, "(action=UserLogout&(?:amp;)?t=[a-zA-Z0-9]+)", 3)
    If Not @error Then
    _ShowLogOut()
    $LogOutLink = "/index.php?" & $LogOutLink[0]
    Else
    $LogOutLink = ""
    EndIf
    EndFunc ;==>_TryLogInCookie

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

    Func _Login($user, $pw)
    Local $post = "loginUsername=" & _URIEncode($user) & "&loginPassword=" & _URIEncode($pw) & "&url=%2Findex.php%3Fform%3DUserLogin&&x=7&y=7&useCookies=1"
    Local $h_openRequest = _WinHttpOpenRequest($hw_connect, "POST", "/index.php?form=UserLogin", "HTTP/1.1", "http://www.autoit.de/")
    _WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded" & @CRLF, $post)
    _WinHttpReceiveResponse($h_openRequest)
    Local $header = "", $Index = 0
    Do
    $header &= _WinHttpQueryHeadersEx($h_openRequest, $WINHTTP_QUERY_SET_COOKIE, $WINHTTP_HEADER_NAME_BY_INDEX, $Index)
    $Index = @extended
    Until $Index = 0
    $header = StringRegExp($header, "(wcf_.*?;)", 3)
    Local $CookieString = "Cookie:"
    For $i = 0 To UBound($header) - 1
    $CookieString &= " " & $header[$i]
    Next
    IniWrite("ShoutBoxClient.ini", "Data", "LogInData", $CookieString)
    IniWrite("ShoutBoxClient.ini", "Data", "User", $user)
    _WinHTTPCloseHandle($h_openRequest)
    _TryLogInCookie()
    EndFunc ;==>_Login

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

    Func _URIEncode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(BinaryToString(StringToBinary($sData, 4), 1), "")
    Local $nChar
    $sData = ""
    For $i = 1 To $aData[0]
    ;~ ConsoleWrite($aData[$i] & @CRLF)
    $nChar = Asc($aData[$i])
    Switch $nChar
    Case 45, 46, 48 - 57, 65 To 90, 95, 97 To 122, 126
    $sData &= $aData[$i]
    Case 32
    $sData &= "+"
    Case Else
    $sData &= "%" & Hex($nChar, 2)
    EndSwitch
    Next
    Return $sData
    EndFunc ;==>_URIEncode

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

    Func _URIDecode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(StringReplace($sData, "+", " ", 0, 1), "%")
    $sData = ""
    For $i = 2 To $aData[0]
    $aData[1] &= Chr(Dec(StringLeft($aData[$i], 2))) & StringTrimLeft($aData[$i], 2)
    Next
    Return BinaryToString(StringToBinary($aData[1], 1), 4)
    EndFunc ;==>_URIDecode

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

    Func _GetNewestPostAd()
    _GetNewestPost()
    EndFunc ;==>_GetNewestPostAd

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

    Func _GetNewestPost($hRequest = -1)
    If $hRequest = -1 Then
    $hRequest = _WinHttpOpenRequest($hw_connect, "GET", "/index.php?page=ShoutboxContent&output=xml&since=" & $__LASTMESSAGE, "HTTP/1.1", "http://www.autoit.de/")
    _AddLogIn($hRequest)
    _WinHttpSendRequest($hRequest)
    EndIf
    _WinHttpReceiveResponse($hRequest)
    Local $data
    Do
    $data &= _WinHTTPReadData($hRequest, 1)
    Until @extended = 0
    _WinHTTPCloseHandle($hRequest)
    Local $LASTMESSAGE = StringRegExp($data, "<last>(.*?)</last>", 1)
    If IsArray($LASTMESSAGE) And $LASTMESSAGE[0] <> $__LASTMESSAGE Then
    $__LASTMESSAGE = $LASTMESSAGE[0]
    Local $messages = StringRegExp($data, "(?s)<line><!\[CDATA\[(.*?)\]\]></line>", 3)
    Local $insert = ""
    For $i = 0 To UBound($messages) - 1
    $insert &= $messages[$i] & "<br />" & @CRLF
    Next
    If StringLen($insert) Then
    _IEDocInsertHTML($oShoutBox, $insert)
    $oIE.Document.parentwindow.Scroll(0, 99999)
    $state = WinGetState("AutoIt Shoutbox Chat -- © by Greek und Prog@ndy")
    If BitAND($state, 16) Then
    $result = StringRegExp($insert, "javascript\:parent\.sbWhisperTo\('(.*?)'\);", 1)
    If IsArray($result) Then
    TrayTip("Shoutbox Client", "Neue Nachricht von: " & $result[0], 2, 1)
    Sleep(2000)
    EndIf
    EndIf
    EndIf
    _ReadOnlineList($data)
    EndIf
    EndFunc ;==>_GetNewestPost

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

    Func _ReadOnlineList(ByRef $data)
    Local $temp = GUICtrlRead($WhisperList)
    $data = StringRegExp($data, "(?s)<onlineList>.*?<a(.*)</onlineList>", 1)
    $data = StringRegExp($data[0], '">(?:<[^>]*>)*(.+?)(?:</[^>]*>)*?</a>', 3)
    GUICtrlSetData($WhisperList, "|-------------|" & _ArrayToString($data), $temp)
    EndFunc ;==>_ReadOnlineList

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

    Func _Nachricht($Text)
    $Text = _URIEncode($Text)
    ;$iDateCalc = _DateDiff( 's',"1970/01/01 00:00:00",_NowCalc())
    $h_openRequest2 = _WinHttpOpenRequest($hw_connect, "POST", "/index.php?page=ShoutboxContent&output=xml", "HTTP/1.1", "http://www.autoit.de/")
    _AddLogIn($h_openRequest2)
    _WinHttpSendRequest($h_openRequest2, "Content-Type: application/x-www-form-urlencoded; charset=UTF-8", "since=" & $__LASTMESSAGE & "&message=" & $Text)
    _GetNewestPost($h_openRequest2)
    EndFunc ;==>_Nachricht

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

    Func _WinHttpQueryHeadersEx($hRequest, $iInfoLevel = $WINHTTP_QUERY_RAW_HEADERS_CRLF, $sName = $WINHTTP_HEADER_NAME_BY_INDEX, $Index = $WINHTTP_NO_HEADER_INDEX)
    Local $tpName = "wstr"
    If $sName = $WINHTTP_HEADER_NAME_BY_INDEX Then $tpName = "ptr"
    Local $struct = DllStructCreate("dword")

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

    Local $a_iCall = DllCall("winhttp.dll", "int", "WinHttpQueryHeaders", _
    "hwnd", $hRequest, _
    "dword", $iInfoLevel, _
    $tpName, $sName, _
    "ptr", 0, _
    "ptr", DllStructGetPtr($struct), _
    "dword*", $Index)

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

    If @error Or $a_iCall[0] Then
    Return SetError(1, 0, 0)
    EndIf

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

    Local $i_size = DllStructGetData($struct, 1)

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

    If Not $i_size Then
    Return SetError(0, 0, "")
    EndIf

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

    Local $lpBuffer = DllStructCreate("wchar[" & $i_size & "]")

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

    $a_iCall = DllCall("winhttp.dll", "int", "WinHttpQueryHeaders", _
    "hwnd", $hRequest, _
    "dword", $iInfoLevel, _
    $tpName, $sName, _
    "ptr", DllStructGetPtr($lpBuffer), _
    "ptr", DllStructGetPtr($struct), _
    "dword*", $Index)

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

    If @error Or Not $a_iCall[0] Then
    Return SetError(2, 0, 0)
    EndIf

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

    Return SetError(0, $a_iCall[6], DllStructGetData($lpBuffer, 1))
    EndFunc ;==>_WinHttpQueryHeadersEx

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

    Func WinRunTrans($Window, $Mod)
    If $Mod = "Show" Then
    WinSetTrans($Window, "", 0)
    GUISetState(@SW_SHOW, $Window)
    For $i = 0 To 255 Step 5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    ElseIf $Mod = "Hide" Then
    For $i = 255 To 0 Step -5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    GUISetState(@SW_HIDE, $Window)
    EndIf
    EndFunc ;==>WinRunTrans
    #EndRegion Func's

    [/autoit]


    Tut es aber nicht 8|
    Jemand ne Idee?

  • Shoutbox Chat

    • Sen
    • 17. Dezember 2009 um 11:27

    Langeweile pur.
    Kleine Veränderung/Verbesserung im Anhang.
    Download: Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Änderungen:
    - WinRunTrans eingebaut
    Ich liebe den Effect einfach :P

    - GUI fast komplett umgestellt
    Ich sag ja, langeweile :D

    - GUICtrlSet(Bk)Color eingefügt
    Wichtig, da Nutzer mit Custom VS sonst z.b.
    die Schrift im Edit Feld nicht lesen können.

    - Kleinigkeiten
    Wie übersicht (Region) etc.

    Dateien

    ShoutBox.zip 34,22 kB – 310 Downloads
  • Random bmp Generator

    • Sen
    • 17. Dezember 2009 um 09:47

    Wenn wir grad eh dabei sind das kleine Script zu verbessern :D

    Spoiler anzeigen
    [autoit]


    #include <GDIPlus.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region StartUp
    Opt("GUIOnEventMode", 1)
    _GDIPlus_Startup()
    $Rot = _GDIPlus_PenCreate(0xFFFF0000)
    $Gruen = _GDIPlus_PenCreate(0xFF00FF00)
    $Blau = _GDIPlus_PenCreate(0xFF0000FF)
    #EndRegion StartUp

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

    #Region GUI
    $hGUI = GUICreate("RandomDraw", 640, 480, -1, -1)
    $Graphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    GUISetOnEvent($GUI_EVENT_CLOSE, "ExitFunc")
    WinRunTrans($hGUI, "Show")
    #EndRegion GUI

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

    #Region Loop
    For $y = 1 To 479
    For $x = 0 To 639
    $Random = Random(1, 3, 1)
    Switch $Random
    Case 1
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Rot)
    Case 2
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Gruen)
    Case 3
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Blau)
    EndSwitch
    Next
    Next

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

    While
    Sleep(50)
    WEnd
    #EndRegion Loop

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

    #Region Func's
    Func ExitFunc()
    WinRunTrans($hGUI, "Hide")
    _GDIPlus_PenDispose($Rot)
    _GDIPlus_PenDispose($Blau)
    _GDIPlus_PenDispose($Gruen)
    _GDIPlus_GraphicsDispose($Graphic)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>ExitFunc

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

    Func WinRunTrans($Window, $Mod)
    If $Mod = "Show" Then
    WinSetTrans($Window, "", 0)
    GUISetState(@SW_SHOW, $Window)
    For $i = 0 To 255 Step 5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    ElseIf $Mod = "Hide" Then
    For $i = 255 To 0 Step -5
    WinSetTrans($Window, "", $i)
    Sleep(10)
    Next
    GUISetState(@SW_HIDE, $Window)
    EndIf
    EndFunc ;==>WinRunTrans
    #EndRegion Func's

    [/autoit]
  • Random bmp Generator

    • Sen
    • 17. Dezember 2009 um 02:34
    Spoiler anzeigen
    [autoit]


    #include <GDIPlus.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    #Region StartUp
    Opt("GUIOnEventMode", 1)
    _GDIPlus_Startup()
    $Rot = _GDIPlus_PenCreate(0xFFFF0000)
    $Gruen = _GDIPlus_PenCreate(0xFF00FF00)
    $Blau = _GDIPlus_PenCreate(0xFF0000FF)
    #EndRegion StartUp

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

    #Region GUI
    $hGUI = GUICreate("RandomDraw", 640, 480, -1, -1)
    $Graphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    GUISetState(@SW_SHOW)
    #EndRegion GUI

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

    #Region Loop
    For $y = 1 To 479
    For $x = 0 To 639
    $Random = Random(1, 3, 1)
    Switch $Random
    Case 1
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Rot)
    Case 2
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Gruen)
    Case 3
    _GDIPlus_GraphicsDrawLine($Graphic, $x, $y, 1, $y, $Blau)
    EndSwitch
    Next
    If GUIGetMsg() = -3 Then ExitFunc()
    Next

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    ExitFunc()
    EndSwitch
    WEnd
    #EndRegion Loop

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

    #Region Func's
    Func ExitFunc()
    _GDIPlus_PenDispose($Rot)
    _GDIPlus_PenDispose($Blau)
    _GDIPlus_PenDispose($Gruen)
    _GDIPlus_GraphicsDispose($Graphic)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>ExitFunc
    #EndRegion Func's

    [/autoit]

    Schneller + übersichtlicher :P

  • Listview

    • Sen
    • 17. Dezember 2009 um 02:19
    Spoiler anzeigen


    Return Value
    Returns an array, the first element ($array[0]) contains the number of strings returned, the remaining elements ($array[1], $array[2], etc.) contain the delimited strings.
    If no delimiters were found @error is set to 1, the count is 1 ($array[0]) and the full string is returned ($array[1]).

    Remarks
    If you use a blank string "" for the delimiters, each character will be returned as an element.
    If the delimiter you wish to use is a substring instead of individual single characters, see the example below.
    StringSplit is very useful as an alternative to StringInStr and as a means to populate an array.
    Caution if you use the macro @CRLF you are referring to a 2 character string so you will generate extra blanks lines.

    Nochmal zur Erklärung ;)

    Wie Seubo schneller war :rolleyes:

  • Listview

    • Sen
    • 17. Dezember 2009 um 02:14
    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>

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

    GUICreate("")
    $list = GUICtrlCreateListView("text1|text2",0,0)
    GUICtrlCreateListViewItem("test1| bufu",$list)
    GUICtrlCreateListViewItem("test2| jaja",$list)
    $bttn = GUICtrlCreateButton("test",200,0)
    GUISetState()
    while 1
    $msg = GUIGetMsg()
    Switch $msg
    case $bttn
    $read = GUICtrlRead(GUICtrlRead($list))
    MsgBox(0,"",$read)
    $split = StringSplit($read,"|")
    MsgBox(0,"","Item's count: " &$split[0])
    MsgBox(0,"","1. Item: " &$split[1])
    MsgBox(0,"","2. Item: " &$split[2])
    Case $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]


    :D

  • ProgressBar auslesen und Anwendung beenden

    • Sen
    • 11. Dezember 2009 um 14:58

    Weit unter 1sec sogar bei gutem Rechner..
    8|

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 21:41

    Hab das ganze mal angepasst.. aber bekomme nen Fehler o_O

    Spoiler anzeigen
    PHP
    <?
    $folder = "./Logs/";
    
    
    if(isset($_REQUEST['u_submit'])) {
        if(!substr($_FILES['u_file']['name'], -5, 5) == ".html") {
            echo "Falsches Dateiformat";
            die();
        }
    
    
        if(!move_uploaded_file($_FILES['u_file']['tmp_name'], $folder.$_FILES['u_file']['name'])) {
            echo "Fehler beim Dateiupload";
            die();
        }
    
    
        header("Location: ./index.php");
        die();
    }
    
    
    $files = scandir($folder, 1);
    if(is_array($files)) {
        array_shift($files);
        array_shift($files);
        echo "Found logfiles:<br>";
        foreach($files as $val) {
            echo '<a href="index.php?file='.$val.'">'.$val.'</a><br>';
        }
        echo "--------------------------------------<br><br>";
    }
    
    
    if(isset($_GET['file'])) {
        echo "Logfile ".$_GET['file'].":<br>Start------------------------------------------><br>";
        $hfile = fopen($folder.$_GET['file'], "r");
        echo fread($hfile, filesize($folder.$_GET['file']));
        fclose($hfile);
        echo "End<------------------------------------------";
    }
    ?>
    <br><br>
    <form action="index.php" enctype="multipart/form-data" method="POST">
    <input type="file" name="u_file" value=""><br>
    <input type="submit" name="u_submit" value="Datei hochladen">
    </form>
    Alles anzeigen

    Die Datei heißt index.php und das /Logs/ Verzeichnis existiert..
    aber die Seite sieht grundsätzlich nur so aus:
    [Blockierte Grafik: http://j23.img-up.net/Fehlerxk4er.png]
    8|

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 17:22

    Direkt ne Funktion hab ich dafür noch nicht gefunden.
    Jemand ne Idee oder n Beispiel?

    Muss nicht mal unbedingt Php sein,
    ich brauch die Logs immer nur online abrufbar :s

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 15:00

    Eigentlich kann alles übernommen werden, da die Html Datei wirklich nur
    den "Log" an sich beinhaltet. Praktisch wäre ein kleines System ähnlich einem..
    wie soll ich das erklären :D

    Skizze:
    [Blockierte Grafik: http://w30.img-up.net/Skizza2vzy1.png]

    Wäre sowas möglich?
    Das ein Script alle z.b. halbe Stunde die Log Datei auf den Server läd,
    und er in einem kleinem Archiv wie oben angezeigt wird?

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 01:06

    Ich meinte zwar eigentlich lediglich ein kleines Php Script
    aufm Server das den Inhalt der Log.html entgegen nimmt..

    aber warum leicht wenns auch umständlich geht :rofl:

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 00:45

    Den Server dafür hätte ich, nur hab ich nicht umbedingt lust mein Pw etc
    im Script unterzubringen da auch oft Freunde am Rechner sind..

    deswegen die Frage mit dem Php Script auf dem Server.

  • Html Datei online stellen

    • Sen
    • 10. Dezember 2009 um 00:35

    Ich hab auf meinem 2ten Pc den ich meist für größere Downloads etc
    nutze ein Script laufen das mir die Downloads übersichtlich in eine Html Datei schreibt.

    Jetzt stellt sich die Frage, wie stelle ich diese Datei am leichtesten
    online damit ich sie von meinem Laptop aus ansehen kann?

    Per Ftp? Oder gibt es eine "schnellere" Möglichkeit in Php?

  • Vierter Geburtstag

    • Sen
    • 8. Dezember 2009 um 00:50

    Meine kleinere Spielereien.

    Normal:
    [Blockierte Grafik: http://g14.img-up.net/AutoItLogoo4rk.png]

    Pee Version :thumbup:
    [Blockierte Grafik: http://z56.img-up.net/AutoIt-Penjk19.png]

  • 5 Klicks innerhalb von unter 1sek ausführen

    • Sen
    • 7. Dezember 2009 um 21:33

    Ich muss gestehen, ich wusste den schnellsten Weg auch nur
    durch das rumtesten mit "bot-ähnlichen" Scripts. :rofl:

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™