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

Beiträge von Greek

  • Winhttp Login mit md5?

    • Greek
    • 26. Juli 2013 um 09:09
    Zitat von rynow

    das forum wie auch die meisten Forums übermitteln die Variablen nicht über GET (was man über http ansteuern könnte), sondern über POST. Daher denke ich nicht, dass du dein vorhaben mit WinHttp lösen kannst.

    Natürlich geht das mit WinHTTP

  • SDL_gfx verwenden

    • Greek
    • 3. Juli 2013 um 00:34

    Hi,

    hast du sowas schonmal gemacht?

    So einfach geht das nicht, ist nicht zu vergleichen mit AutoIt wo man einfach eine Datei includiert.

    Je nachdem was man benutzt: vs10, vs12 etc, muss erstmal das Projekt dafür erstellt werden.

    Das geht einfach in dem man die Beiliegende sln datei öffnet und sie erstellt ( F7 ), danach hast du die libs und dlls im Ordner, das geht aber auch nur wenn es ein VC10 Projekt ist ( in deinem Fall ).

    Ansonsten muss man cmake benutzen.

    Wenn du das geschafft hast du muss du die Sachen linken auch noch. Also jede menge Arbeit bis so etwas erstmal läuft. :rolleyes:

    Ich empfehl dir übrigens nicht die sdl zu benutzen, nehm lieber hier:

    http://www.sfml-dev.org/download/sfml/2.0/ ( Das richtige auswählen natürlich ), für eine Version gibt es da schon fertige libs, weis aber gerade nicht welche. Ansonsten wie oben einfach genannt sln öffnen und erstellen.

    Dann musst die wieder Linken, ich hab ne Anleitung mir mal gemacht, weil ich das selber immer wieder vergesse:

    Zitat

    Projekt -> Projekteigenschaften -> Konfigurationseigenschaften

    C/C++ -> Allgemein -> Zusätzliche includeverzeichnisse (dort SFML/include angeben)

    Linker -> Allgemein -> zusätzliche Bibliothekverzeichnisse (dort SFML/lib angeben)

    Linker -> Eingabe -> Zusätzliche Abhängigkeiten
    dort:
    sfml-audio-d.lib
    sfml-graphics-d.lib
    sfml-network-d.lib
    sfml-main-d.lib
    sfml-system-d.lib
    sfml-window-d.lib

    eintragen


    C/C++ -> Präprozessor -> Präprozessordefinitionen -> SFML_DYNAMIC eintragen

    Danach noch die ganzen dlls die er brauch in dein Projektverzeichnis, ( falls noch welcher fehlen sagt er das beim compilieren )

    Alles anzeigen

    Gruß Greek

  • Mouse Button 4 und 5 Senden

    • Greek
    • 5. Juni 2013 um 00:03

    Alles was du Down machst musst du auch wieder Up machen, das setzt sich nach Script Beendung leider nicht zurück.

  • Mouse Button 4 und 5 Senden

    • Greek
    • 4. Juni 2013 um 23:39

    Sow 3 Stunden durch die msdn gelesen bis ich rausgefunden hab wies geht :D

    Spoiler anzeigen
    [autoit]

    Sleep(2000)

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

    _WinAPI_Mouse_Event($MOUSEEVENTF_XDOWN,0,0,0x0001)

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

    Sleep(2000)

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

    _WinAPI_Mouse_Event($MOUSEEVENTF_XUP,0,0,0x0001)

    [/autoit]

    Das ist XButton1 für XButton2 musst du 0x0002 eintragen.

    Die Konstanten dafür fehlen in der Constants.au3 deswegen selber 0x0001 und 0x0002 eintragen ;)

    Glaub der Ersteller von _WinAPI_Mouse_Event hat das selbst auch nicht verstanden, da das in $iData nicht erwähnt wird ( der 4. Parameter ). Constanten + Dokumentation Update mal beantragen.

    Gruß Greek, die mühe hab ich mir gern gemacht ^^

  • Basics? GUI > Array erstellen, Werte sortieren, danach Wert wieder an richtige Stelle...

    • Greek
    • 3. Juni 2013 um 15:35

    Verstehst du das was in Bonus passiert? Die eigne Lösung ist immer besser.

    Mach es lieber mit Hashs, die sind viiiiiiiiiel einfacher als Arrays, schaus dir nochmal und probier es umzusetzen ohne das ich es schreibe :)

    Spoiler anzeigen
    [autoit]

    ;----------------------------------------------------------------------
    ;------------------------Hash-Table------------------------------------
    ;----------------------------------------------------------------------
    ; http://msdn.microsoft.com/de-de/library/….hashtable.aspx

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

    ;////Hash-Table Erstellen///////////
    $hash = ObjCreate("System.Collections.Hashtable")

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

    ;////Einträge hinzufügen///////////
    $hash.add ("Berlin", 3395189)
    $hash.add ("Hamburg", 1743627)
    $hash.add ("München", 1259677)
    $hash.add ("Köln", 983347)
    $hash.add ("Dresden", 504795)
    ;Beispiel hier: Einwohnerzahl wird der jeweiligen Stadt zugeordnet.

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

    ;////Anzahl der Elemente bestimmen///////////
    $Count = $hash.Count

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

    ;////Überprüft ob ein Element vorhanden ist///////////
    If $hash.Contains ("Bonn") Then MsgBox(0, "", "Bonn ist eingetragen") ;Bonn ist im Bsp. nicht enthalten

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

    ;////Löscht ein Element aus der Hash-Table///////////
    $hash.remove ("München")

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

    ;////Elemente aufrufen///////////
    ConsoleWrite("Einwohner(Berlin): " & $hash("Berlin") & @CRLF)
    ConsoleWrite("Einwohner(Dresden): " & $hash("Dresden") & @CRLF)

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

    ;////Leert die Hash-Table///////////
    $hash.Clear

    [/autoit]

    Kannst dir mal Internet mal anschauen was Hashs überhaupt sind.

    Und benutz

    Spoiler anzeigen

    bitte, sonst sieht man vor lauter Code kaum etwas :)

    Gruß Greek

  • Basics? GUI > Array erstellen, Werte sortieren, danach Wert wieder an richtige Stelle...

    • Greek
    • 3. Juni 2013 um 15:18

    Post mal deinen ganzen Code und hab btw. die Hash Variante editiert, die ist wesentlich einfacher

  • Basics? GUI > Array erstellen, Werte sortieren, danach Wert wieder an richtige Stelle...

    • Greek
    • 3. Juni 2013 um 14:52

    Wie gesagt wenn du das Array nicht sortierst hast du das Problem nicht, das wär dann so:

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $Form0 = GUICreate("Rahl Beispiel", 280, 200, -1, -1)
    For $i=0 to 5 Step +1
    Assign("Input" & "_" &$i, GUICtrlCreateInput($i, 5, $i*30, 120, 21))
    Next
    For $i=0 to 5 Step +1
    Assign("Input" & "_" &$i+6, GUICtrlCreateInput($i+6, 150, $i*30, 121, 21))
    Next
    GUISetState(@SW_SHOW)

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

    Sleep(2000)

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

    Global $container[6] ; Array geht von 0 - 5
    Global $maximum = 0

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

    ;// Auslesen
    For $i=0 To 5 Step +1
    $container[$i] = Number(GUICtrlRead(Eval("Input" & "_" &$i))) ;// Er ließt es als Text aus, müssen ihm sagen das es eine Zahl ist
    Next

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

    ;// Den besten finden
    For $i=0 To 5 Step +1
    If ($container[$i] > $maximum) Then
    $maximum = $container[$i]
    EndIf
    Next

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

    ;// Dein Bonus addieren
    For $i=0 To 5 Step +1
    If ($container[$i] = $maximum) Then
    $container[$i] += 100;
    ExitLoop ; Nur einer darf maximum sein
    EndIf
    Next

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

    ;// Zurueck schreiben
    For $i=0 To 5 Step +1
    GUICtrlSetData(Eval("Input" & "_" &$i+6),$container[$i])
    Next

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]

    ( Sorry ich mag Assign/Eval sehr gerne ^^ )

    Aber ich mach dir mal ein Beispiel mit Hash maps dann ist das doch schon wesentlich einfacher zu verstehen :), ich editiere dann nach.

    Edit: So hier nochmal ganz einfach, dann musst du keine blöden arrays mehr benutzen ;)

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #Region ### START Koda GUI section ### Form= ;// Mit Koda generiert, zu faul atm
    $Form1 = GUICreate("Form1", 390, 101, -1, -1)
    $Label_0 = GUICtrlCreateLabel("Ausdauer", 8, 8, 49, 17)
    $Label_1 = GUICtrlCreateLabel("Tempo", 8, 40, 37, 17)
    $Label_2 = GUICtrlCreateLabel("Galopp", 8, 72, 38, 17)
    $Input_0 = GUICtrlCreateInput("50", 64, 8, 121, 21)
    $Input_1 = GUICtrlCreateInput("20", 64, 40, 121, 21)
    $Input_2 = GUICtrlCreateInput("60", 64, 72, 121, 21)
    $Label_3 = GUICtrlCreateLabel("Ausdauer", 200, 8, 49, 17)
    $Label_4 = GUICtrlCreateLabel("Tempo", 200, 40, 37, 17)
    $Label_5 = GUICtrlCreateLabel("Galopp", 200, 72, 38, 17)
    $Input_3 = GUICtrlCreateInput("", 256, 8, 121, 21)
    $Input_4 = GUICtrlCreateInput("", 256, 40, 121, 21)
    $Input_5 = GUICtrlCreateInput("", 256, 72, 121, 21)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    $hash = ObjCreate("System.Collections.Hashtable") ;// Alternative zu Array, wesentlich einfacher

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

    ;// Einlesen
    For $i=0 To 2 Step +1
    $hash.add(GUICtrlRead(Eval("Label" & "_" &$i)),Number(GUICtrlRead(Eval("Input" & "_" &$i))))
    Next

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

    ;// Nun kannst du ganz einfach drauf zu greifen ! :)
    MsgBox(0,"Ausdauer Anzeige", $hash("Ausdauer"))

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

    ;// In die 2 Spalte
    For $i=0 To 2 Step +1
    GUICtrlSetData(Eval("Input" & "_" &$i+3),$hash(GUICtrlRead(Eval("Label" & "_" &$i))))
    Next

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]

    https://autoit.de/index.php?page…24276#post24276

    Hier bei Hash-Tabelle kannst du mehr drüber lesen, AspirinJunkie hat hier sehr schön die array alternativen gezeigt.

    Gruß Greek

  • Basics? GUI > Array erstellen, Werte sortieren, danach Wert wieder an richtige Stelle...

    • Greek
    • 1. Juni 2013 um 19:11

    Oder du veränderst einfach die Reihenfolge von deinem array nicht, also kein arraysort benutzen.

    Beispiel wenn ein Wert einen Bonus bekommen soll:

    Spoiler anzeigen
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $Form0 = GUICreate("Rahl Beispiel", 141, 201, -1, -1)
    $Input_0 = GUICtrlCreateInput("5", 8, 8, 121, 21)
    $Input_1 = GUICtrlCreateInput("10", 8, 40, 121, 21)
    $Input_2 = GUICtrlCreateInput("8", 8, 72, 121, 21)
    $Input_3 = GUICtrlCreateInput("1", 8, 104, 121, 21)
    $Input_4 = GUICtrlCreateInput("2", 8, 136, 121, 21)
    $Input_5 = GUICtrlCreateInput("6", 8, 168, 121, 21)
    GUISetState(@SW_SHOW)

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

    Sleep(2000)

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

    Global $container[6] ; Array geht von 0 - 5
    Global $maximum = 0

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

    ;// Auslesen
    For $i=0 To 5 Step +1
    $container[$i] = Number(GUICtrlRead(Eval("Input" & "_" &$i))) ;// Er ließt es als Text aus, müssen ihm sagen das es eine Zahl ist
    Next

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

    ;// Den besten finden
    For $i=0 To 5 Step +1
    If ($container[$i] > $maximum) Then
    $maximum = $container[$i]
    EndIf
    Next

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

    ;// Dein Bonus addieren
    For $i=0 To 5 Step +1
    If ($container[$i] = $maximum) Then
    $container[$i] += 100;
    ExitLoop ; Nur einer darf maximum sein
    EndIf
    Next

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

    ;// Zurueck schreiben
    For $i=0 To 5 Step +1
    GUICtrlSetData(Eval("Input" & "_" &$i),$container[$i])
    Next

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]
  • Linie auf Bildschirm zeichnen

    • Greek
    • 15. April 2012 um 18:38

    So z.B.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    #include <timers.au3>
    #include <misc.au3>
    #Include <WinAPI.au3>

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

    HotKeySet("{ESC}","_ende")

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

    Global Const $GWL_EXSTYLE = -20

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

    $dll = DllOpen("user32.dll")

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

    Global $ballpos1=@DesktopWidth/2
    Global $ballpos2=@DesktopHeight/2
    Global $BewegungSenkrecht=Random(5, 7, 1)
    Global $BewegungWagrecht=Random(5, 7, 1)
    Global $Speed=10

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

    _GDIPlus_Startup()

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

    Global $hGui = GUICreate("Rahmen", @DesktopWidth, @DesktopHeight, -1, -1, $WS_POPUP, $WS_EX_LAYERED)
    WinSetOnTop("Rahmen","",1)
    GUISetBkColor(0xABCDEF)
    _WinAPI_SetLayeredWindowAttributes($hGui, 0xABCDEF, 255)
    GUISetState()
    Global $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGui)
    $Pinsel = _GDIPlus_PenCreate(0xFF0000FF, 20)
    Global $vanish = _GDIPlus_PenCreate(0xFF000000, 20)
    ;Global $vanish = _GDIPlus_PenCreate(0xFFABCDEF, 20) // Alles mit der Farbe ABCDEF verschwindet
    ;_GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF ) // Wenn du hier mit drübermalst ist alles weg
    $t1 = _Timer_SetTimer(0, 20, "move")
    $begin=TimerInit()

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

    _Win_SetClickThrough($hGui)

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

    While 1
    $nmsg=GUIGetMsg()
    Switch $nmsg
    Case $gui_event_close
    Exit
    EndSwitch
    WEnd

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

    Func _ende()
    _GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF )
    _GDIPlus_PenDispose($Pinsel)
    _GDIPlus_PenDispose($vanish)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_ende

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

    Func move($a, $b, $c, $d)
    _GDIPlus_GraphicsDrawArc ( $hGraphic, $ballpos1, $ballpos2, 70, 70, 180, 360, $vanish )
    $ballpos1+=$BewegungWagrecht * $Speed
    $ballpos2+=$BewegungSenkrecht * $Speed
    _GDIPlus_GraphicsDrawArc ( $hGraphic, $ballpos1, $ballpos2, 70, 70, 180, 360, $Pinsel )
    If $ballpos1 >= @DesktopWidth - 80 And $BewegungWagrecht > 0 Then $BewegungWagrecht = Random(-7, -5, 1)
    If $ballpos1 < 10 And $BewegungWagrecht < 0 Then $BewegungWagrecht = Random(5, 7, 1)
    If $ballpos2 >= @DesktopHeight - 95 And $BewegungSenkrecht > 0 Then $BewegungSenkrecht = Random(-7, -5, 1)
    If $ballpos2 < 30 And $BewegungSenkrecht < 0 Then $BewegungSenkrecht = Random(5, 7, 1)
    If _GDIPlus_PenGetColor ( $vanish )=0xFF000000 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFFFFFF00 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFFFFFF00 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFFFF0000 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFFFF0000 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFF00FF00 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFF00FF00 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFF000000 )
    EndIf
    $dif=TimerDiff( $begin )
    If $dif>12000 Then
    _GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF )
    $begin=TimerInit()
    EndIf
    EndFunc ;==>move

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

    Func _Win_SetClickThrough($title,$text = "",$noclic = True)
    ; UDF von ProgAndy
    Local $hWnd = WinGetHandle($title,$text)
    If @error Then Return SetError(1,0,0)
    If $noclic Then
    _WinAPI_SetWindowLong($hWnd,$GWL_EXSTYLE,BitOR(_WinAPI_GetWindowLong($hWnd,$GWL_EXSTYLE),$WS_EX_TRANSPARENT))
    If @error Then Return SetError(2,0,0)
    ;WinSetTrans($hWnd,"",255) ; Sets the Layered Attribute, but still shows the window :) Hier müsste man checken ob es das attribute schon hat, habs mal auskommentiert
    If @error Then Return SetError(2,0,0)
    Else
    _WinAPI_SetWindowLong($hWnd,$GWL_EXSTYLE,BitAND(_WinAPI_GetWindowLong($hWnd,$GWL_EXSTYLE),BitNOT($WS_EX_TRANSPARENT)))
    If @error Then Return SetError(2,0,0)
    EndIf
    Return 1
    EndFunc

    [/autoit]

    Damit malst du auf ein GUI zwar, aber es ist unsichtbar und es lässt Klicks durch.

  • Hotkeyset

    • Greek
    • 8. April 2012 um 13:01

    Hi,

    da muss deine eigene Funktion rein, so:

    Spoiler anzeigen
    [autoit]

    HotKeySet("{ESC}", "_exit")
    HotKeySet("{ENTER}", "_myFunction")

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

    While 1
    Sleep(200)
    WEnd

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

    Func _exit()
    Exit
    EndFunc

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

    Func _myFunction()
    MouseMove(500,500)
    EndFunc

    [/autoit]

    Frohe Ostern
    Greek

  • GDIplus: Frage zu GraphicsDispose, etc

    • Greek
    • 10. März 2012 um 20:07

    Hi,
    du könntest ein eigenes GUI machen durch das man durch drücken kann und das bei einer bestimmen Farbe alles löscht, bzw. transparent setzt.

    So könnte man das machen:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    #include <timers.au3>
    #include <misc.au3>
    #Include <WinAPI.au3>

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

    Global Const $GWL_EXSTYLE = -20

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

    $dll = DllOpen("user32.dll")

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

    Global $ballpos1=@DesktopWidth/2
    Global $ballpos2=@DesktopHeight/2
    Global $BewegungSenkrecht=Random(5, 7, 1)
    Global $BewegungWagrecht=Random(5, 7, 1)
    Global $Speed=10

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

    _GDIPlus_Startup()

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

    Global $hGui = GUICreate("Rahmen", @DesktopWidth, @DesktopHeight, -1, -1, $WS_POPUP, $WS_EX_LAYERED)
    GUISetBkColor(0xABCDEF)
    _WinAPI_SetLayeredWindowAttributes($hGui, 0xABCDEF, 255)
    GUISetState()
    Global $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGui)
    $Pinsel = _GDIPlus_PenCreate(0xFF0000FF, 20)
    Global $vanish = _GDIPlus_PenCreate(0xFF000000, 20)
    ;Global $vanish = _GDIPlus_PenCreate(0xFFABCDEF, 20) // Alles mit der Farbe ABCDEF verschwindet
    ;_GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF ) // Wenn du hier mit drübermalst ist alles weg
    $t1 = _Timer_SetTimer(0, 20, "move")
    $begin=TimerInit()

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

    _Win_SetClickThrough($hGui)

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

    While 1
    $nmsg=GUIGetMsg()
    Switch $nmsg
    Case $gui_event_close
    Exit
    EndSwitch
    WEnd

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

    Func _ende()
    _GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF )
    _GDIPlus_PenDispose($Pinsel)
    _GDIPlus_PenDispose($vanish)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_ende

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

    Func move($a, $b, $c, $d)
    _GDIPlus_GraphicsDrawArc ( $hGraphic, $ballpos1, $ballpos2, 70, 70, 180, 360, $vanish )
    $ballpos1+=$BewegungWagrecht * $Speed
    $ballpos2+=$BewegungSenkrecht * $Speed
    _GDIPlus_GraphicsDrawArc ( $hGraphic, $ballpos1, $ballpos2, 70, 70, 180, 360, $Pinsel )
    If $ballpos1 >= @DesktopWidth - 80 And $BewegungWagrecht > 0 Then $BewegungWagrecht = Random(-7, -5, 1)
    If $ballpos1 < 10 And $BewegungWagrecht < 0 Then $BewegungWagrecht = Random(5, 7, 1)
    If $ballpos2 >= @DesktopHeight - 95 And $BewegungSenkrecht > 0 Then $BewegungSenkrecht = Random(-7, -5, 1)
    If $ballpos2 < 30 And $BewegungSenkrecht < 0 Then $BewegungSenkrecht = Random(5, 7, 1)
    If _GDIPlus_PenGetColor ( $vanish )=0xFF000000 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFFFFFF00 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFFFFFF00 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFFFF0000 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFFFF0000 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFF00FF00 )
    ElseIf _GDIPlus_PenGetColor ( $vanish )=0xFF00FF00 Then
    _GDIPlus_PenSetColor ( $vanish, 0xFF000000 )
    EndIf
    $dif=TimerDiff( $begin )
    If $dif>12000 Then
    _GDIPlus_GraphicsClear ( $hGraphic, 0xFFABCDEF )
    $begin=TimerInit()
    EndIf
    EndFunc ;==>move

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

    Func _Win_SetClickThrough($title,$text = "",$noclic = True)
    ; UDF von ProgAndy
    Local $hWnd = WinGetHandle($title,$text)
    If @error Then Return SetError(1,0,0)
    If $noclic Then
    _WinAPI_SetWindowLong($hWnd,$GWL_EXSTYLE,BitOR(_WinAPI_GetWindowLong($hWnd,$GWL_EXSTYLE),$WS_EX_TRANSPARENT))
    If @error Then Return SetError(2,0,0)
    ;WinSetTrans($hWnd,"",255) ; Sets the Layered Attribute, but still shows the window :) Hier müsste man checken ob es das attribute schon, habs mal auskommentiert
    If @error Then Return SetError(2,0,0)
    Else
    _WinAPI_SetWindowLong($hWnd,$GWL_EXSTYLE,BitAND(_WinAPI_GetWindowLong($hWnd,$GWL_EXSTYLE),BitNOT($WS_EX_TRANSPARENT)))
    If @error Then Return SetError(2,0,0)
    EndIf
    Return 1
    EndFunc

    [/autoit]

    Gruß Greek

  • WinHttp Headers vom Request

    • Greek
    • 10. März 2012 um 19:47
    Zitat von DarkManX

    Mit der Funktion _WinHttpQueryHeaders kriege ich nur die Headers der Serverantwort auf die Anfrage. Ich will aber irgendwie die Headers der Anfrage auslesen. Hoffe einer kann mir helfen!

    ? Weiß nicht genau was du willst, hier mal ein Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <WinHTTP.au3>

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

    $hw_open = _WinHttpOpen("AutoIt")
    $hw_connect = _WinHttpConnect($hw_open,"autoit.de" )
    $h_openRequest = _WinHttpOpenRequest($hw_connect, "GET", "/", "HTTP/1.1")
    _WinHttpSendRequest($h_openRequest)
    _WinHttpReceiveResponse($h_openRequest)

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

    $header = _WinHttpQueryHeaders($h_openRequest)
    MsgBox(0, "Header", $header)
    If _WinHttpQueryDataAvailable($h_openRequest) Then
    Local $data=""
    Do
    $data&=_WinHttpReadData($h_openRequest)
    Until @error<>0
    MsgBox(0, "Body", $data)
    ClipPut($data) ; Kannst du in eine html datei kopieren und ausführen
    EndIf

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

    _WinHttpCloseHandle($h_openRequest)
    _WinHttpCloseHandle($hw_connect)
    _WinHttpCloseHandle($hw_open)

    [/autoit]

    Ich glaub dir geht es aber darum, wo man überhaupt das Packet her bekommt das man schicken muss?
    Das bekommt man z.B. mit dem Addon Live HTTP Headers für Firefox.

    Gruß Greek

  • RAM Speicheradresse finden

    • Greek
    • 7. März 2012 um 17:15
    Zitat von Aquaplant

    Ich brauch kein Tutorial wie ich die Speicheradressen rausfinde sondern woran ich erkenne welche es beim starten sind, da sie sich immer verändern...

    Doch brauchst du, du hast nämlich die falsche Adresse. Man braucht eine statische, die sind blau markiert oder so, sieht man im Tutorial von CE gut. Schau dir das erst mal an.

  • POST mitgeben

    • Greek
    • 6. März 2012 um 19:19

    Hi,

    probiere das mal aus:

    Spoiler anzeigen
    [autoit]

    #include <WinHTTP.au3>

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

    $username = _URIEncode("deinName")
    $password = _URIEncode("deinPasswort")

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

    $post = "os_username=" & $username&"&os_password="&$password&"&login=Anmelden&os_destination=%2Fhomepage.action"

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

    $hw_open = _WinHttpOpen("Client")
    $hw_connect = _WinHttpConnect($hw_open, "wiki.inserve.local",$INTERNET_DEFAULT_HTTPS_PORT)
    $h_openRequest = _WinHttpOpenRequest($hw_connect,"POST", "/dologin.action","HTTP/1.1", _
    $WINHTTP_NO_REFERER, $WINHTTP_DEFAULT_ACCEPT_TYPES, $WINHTTP_FLAG_SECURE)
    _WinHttpSendRequest($h_openRequest, "Content-Type: application/x-www-form-urlencoded" & @CRLF, $post)
    _WinHttpReceiveResponse($h_openRequest)

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

    $header = _WinHttpQueryHeaders($h_openRequest)
    MsgBox(0, "Header", $header)
    If _WinHttpQueryDataAvailable($h_openRequest) Then
    Local $data=""
    Do
    $data&=_WinHttpReadData($h_openRequest)
    Until @error<>0
    MsgBox(0, "Body", $data)
    EndIf

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

    _WinHttpCloseHandle($h_openRequest)
    _WinHttpCloseHandle($hw_connect)
    _WinHttpCloseHandle($hw_open)

    [/autoit] [autoit][/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

    [/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

    [/autoit]

    Gruß Greek

  • Happy Birthday eukalyptus

    • Greek
    • 2. März 2012 um 19:47

    Alles gute eukalyptus ! :)

  • Wie sieht euer Desktop aus?

    • Greek
    • 29. Februar 2012 um 12:27

    Hier mal meine beiden:

    [Blockierte Grafik: http://s7.directupload.net/images/120229/7ezu3jav.jpg]

    [Blockierte Grafik: http://s14.directupload.net/images/120229/yr359kcr.png]

  • IPs überprüfen

    • Greek
    • 7. Februar 2012 um 19:38

    Broadcast anpingen und dann mit arp -a nachschauen sollte funktionieren.

  • Andy hat Geburtstag

    • Greek
    • 4. Februar 2012 um 21:32

    Alles gute Andy ! :)

  • UDFs für Autoit

    • Greek
    • 30. Januar 2012 um 14:28

    Es gibt doch Prospeed die ist nicht schlecht. Das ist nur leider schlecht nach AutoIt übersetzt worden. Das könnte man nochmal neu machen.

    Wegfindungs UDFs wäre vielleicht noch eine Idee, Trémaux( Besteht ein Weg? ), Djiskstra (Kürzester Weg), Ford(Maximaler Fluss) , Tripel (Entfernungsmatrix, hat AspirinJunky schon nach AutoIt übersetzt)

    Gruß Greek

  • TGA Bild zu einem Jpg oder Bmp Bild?

    • Greek
    • 17. Januar 2012 um 22:45

    Ja und wo ist das Problem? Du tust das doch in deinem Script benutzen, hier mal ein Beispiel wie sowas aussieht:

    Spoiler anzeigen
    [autoit]

    #include <FreeImage.au3>

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

    _FreeImage_LoadDLL(@ScriptDir&"\FreeImage.dll")
    _FreeImage_Initialise()

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

    $sFile = "ChangeMe3.JPG"

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

    $FIF = _FreeImage_GetFileTypeU($sFile)
    If $FIF = $FIF_UNKNOWN Then
    $FIF = _FreeImage_GetFIFFromFilenameU($sFile)
    EndIf
    $hImage = _FreeImage_LoadU($FIF, $sFile)

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

    $hImageRotiert = _FreeImage_RotateClassic($hImage,270)
    $dot = StringInStr($sFile,".",1,-1)
    $Name = StringLeft($sFile,$dot-1)
    $Ext = StringMid($sFile,$dot)

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

    _FreeImage_SaveU($FIF, $hImageRotiert, $Name &"_rsz"&$Ext)
    _FreeImage_Unload($hImage)
    _FreeImage_Unload($hImageRotiert)

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

    _FreeImage_DeInitialise()

    [/autoit]

    ( Rotiert ein Bild )

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™