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

Beiträge von funkey

  • E-Mail verschicken mit AutoIt?

    • funkey
    • 23. Februar 2009 um 13:41
    Zitat von Hilfe

    @ERROR = 3 - Unable to resolve IP


    Demnach stimmt die IP-Adresse nicht.

  • Alle Controls löschen

    • funkey
    • 21. Februar 2009 um 18:21

    Na dann zuerst Guicreate und dann GuiDelete ;)

  • Alle Controls löschen

    • funkey
    • 21. Februar 2009 um 17:23

    Bei der eigenen Gui kannst du dann gleich GuiDelete und dann wieder GuiCreate verwenden.

  • Active Desktop maximieren

    • funkey
    • 21. Februar 2009 um 13:26
    [autoit]

    ControlMove('Program Manager', "", 'Shell Embedding1', 0, 0, @DesktopWidth, @DesktopHeight)

    [/autoit]
  • Inforamtionen über PC abfragen

    • funkey
    • 20. Februar 2009 um 22:00

    @NumParams verwendest du in Funktionen, damit du weißt, wieviele Parameter der Funktion übergeben wurden.

    Beispiel aus der Misc.au3

    _MouseTrap
    [autoit]

    ; #FUNCTION# ====================================================================================================================
    ; Name...........: _MouseTrap
    ; Description ...: Confine the Mouse Cursor to specified coords.
    ; Syntax.........: _MouseTrap([$iLeft = 0[, $iTop = 0[, $iRight = 0[, $iBottom = 0]]]])
    ; Parameters ....: $iLeft - Left coord
    ; $iTop - Top coord
    ; $iRight - Right coord
    ; $iBottom - Bottom coord
    ; Return values .: Success - True
    ; Failure - False
    ; Author ........: Gary Frost (gafrost)
    ; Modified.......:
    ; Remarks .......: Use _MouseTrap() with no params to release the Mouse Cursor
    ; Related .......:
    ; Link ..........;
    ; Example .......; Yes
    ; ===============================================================================================================================
    Func _MouseTrap($iLeft = 0, $iTop = 0, $iRight = 0, $iBottom = 0)
    Local $iResult, $tRect
    If @NumParams == 0 Then
    $iResult = DllCall("user32.dll", "int", "ClipCursor", "int", 0)
    Else
    If @NumParams == 2 Then
    $iRight = $iLeft + 1
    $iBottom = $iTop + 1
    EndIf
    $tRect = DllStructCreate($tagRect)
    If @error Then Return 0
    DllStructSetData($tRect, "Left", $iLeft)
    DllStructSetData($tRect, "Top", $iTop)
    DllStructSetData($tRect, "Right", $iRight)
    DllStructSetData($tRect, "Bottom", $iBottom)
    $iResult = DllCall("user32.dll", "int", "ClipCursor", "ptr", DllStructGetPtr($tRect))
    EndIf
    Return $iResult[0] <> 0
    EndFunc ;==>_MouseTrap

    [/autoit]
  • Classnames auslesen, aber wie??

    • funkey
    • 20. Februar 2009 um 21:08

    Dietmar: Versuchs mal damit

    Spoiler anzeigen
    [autoit]

    Global $FensterTitel = 'Fenstertitel'
    Global $Bekannter_Text = 'Diesen Text kenne ich'

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

    Global $Array = _WinGetCtrlInfo(WinGetTitle($FensterTitel))
    Global $sOne = '[0][0] = ' & $Array[0][0] & @CR, $sTwo

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

    For $iCC = 1 To $Array[0][0]
    $sOne &= '[' & $iCC & '][0] = ' & $Array[$iCC][0] & @CR
    $sTwo &= '[' & $iCC & '][1] = ' & $Array[$iCC][1] & @CR
    Next

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

    MsgBox(64, 'WinInfo', StringTrimRight($sOne, 1) & @CR & StringTrimRight($sTwo, 1))

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

    For $i = 1 To $Array[0][0]
    If ControlGetText(WinGetTitle($FensterTitel), "", $Array[$i][0]) = $Bekannter_Text Then MsgBox(64,"Gefunden", $Array[$i][0])
    Next

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

    Func _WinGetCtrlInfo($hWin)
    If IsString($hWin) Then $hWin = WinGetHandle($hWin)
    Local $sClassList = WinGetClassList($hWin), $iAdd = 1, $aDLL, $sHold
    Local $aSplitClass = StringSplit(StringTrimRight($sClassList, 1), @LF), $aReturn[1][2]
    For $iCount = $aSplitClass[0] To 1 Step - 1
    Local $nCount = 0
    While 1
    $nCount += 1
    If ControlGetHandle($hWin, '', $aSplitClass[$iCount] & $nCount) = '' Then ExitLoop
    If Not StringInStr(Chr(1) & $sHold, Chr(1) & $aSplitClass[$iCount] & $nCount & Chr(1)) Then
    $sHold &= $aSplitClass[$iCount] & $nCount & Chr(1)
    $iAdd += 1
    ReDim $aReturn[$iAdd][2]
    $aReturn[$iAdd - 1][0] = $aSplitClass[$iCount] & $nCount
    $aDLL = DllCall('User32.dll', 'int', 'GetDlgCtrlID', 'hwnd', _
    ControlGetHandle($hWin, '', $aSplitClass[$iCount] & $nCount))
    If @error = 0 Then
    $aReturn[$iAdd - 1][1] = $aDLL[0]
    Else
    $aReturn[$iAdd - 1][1] = ''
    EndIf
    EndIf
    WEnd
    Next
    $aReturn[0][0] = $iAdd - 1
    Return $aReturn
    EndFunc

    [/autoit]
  • Bräuchte hilfe bei einem _IE link befehl

    • funkey
    • 20. Februar 2009 um 20:29

    Es ist schwer zu helfen, ohne url.
    Ich würde eine Schleife mit Wingettitle(....) machen, dann StringInStr, dann _IEFormSubmit oder _IELinkClickByText, aber wie gesagt, ohne besseren Code von dir oder url kann ich nicht viel mehr sagen.

  • Idee fürs forum

    • funkey
    • 20. Februar 2009 um 18:41

    Ich finde einen 'Danke-Button' nicht wichtig. Ich freue mich auch so über jedes ernst gemeinte Danke.
    Den einzigen Vorteil den ich sehe, ist das der Benutzerrang ein bisschen richtiger angezeigt werden könnte, also nicht ein Anfänger als Profi angezeigt wird, nur weil er viele Fragen hat, und nicht ein Profi als Anfänger, da er nicht so oft Fragen stellt.

  • TrayIcon

    • funkey
    • 20. Februar 2009 um 18:16

    Mit der Funktion '_SysTrayIconVisible' aus der SysTray-UDF

  • Classnames auslesen, aber wie??

    • funkey
    • 20. Februar 2009 um 18:12
    [autoit]

    WinGetClassList

    [/autoit]
  • kann man das skript kürzen?

    • funkey
    • 19. Februar 2009 um 22:08
    [autoit]

    If $Filelist[0]=0 Then
    MsgBox(0,"Fehler","Der angegebene Ordner enthält keine dateien.")
    EndIf

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

    For $i = 1 to $Filelist[0]
    Assign('Name'&$i, $Filelist[$i])
    Next

    [/autoit]
  • Problem mit Pic

    • funkey
    • 19. Februar 2009 um 20:58

    Ich weiß garnicht wo ich bei dem Beispiel anfangen soll Fehler auszubessern, deswegen habe ich jetzt auf halbem Weg aufgehört, weil es mir zu bunt wurde. Warum musst du immer eine Extrawurst habe?
    Schneller wäre ich, wenn ich den Code komplett neu schreiben würde.
    Ergebnis meiner bisherigen Bemühungen:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    Dim $Mitte[2]
    $Mitte[0] = @DesktopWidth /2 - (520/2)
    $Mitte[1] = @DesktopHeight / 2- (570/2)
    #Region ### START Koda GUI section ### Form=
    $Ramen = GUICreate("INC Light", 520, 570, $Mitte[0],$Mitte[1],$WS_POPUP);+$WS_CLIPCHILDREN)
    $RamenPic = GUICtrlCreatePic(@ScriptDir & "\Skin\1.gif", 0, 0, 520, 570, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS),$GUI_WS_EX_PARENTDRAG)
    _Ecken($Ramen,0,0,11,11)
    WinSetTrans ($Ramen,"",200)
    $Innen = GUICreate("", 507, 555,3,5,$WS_POPUP+$WS_CHILD, BitOR ($GUI_WS_EX_PARENTDRAG,$WS_EX_MDICHILD),$Ramen)
    $Hintergrund = GUICtrlCreatePic(@ScriptDir & "\Skin\2.gif", 0, 0, 507, 557, BitOR($SS_NOTIFY,$WS_CLIPSIBLINGS,$WS_DISABLED))
    $X = GUICtrlCreatePic(@ScriptDir & "\Skin\3.gif", 478, 0, 30, 15, 0);BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS,$WS_EX_TRANSPARENT,$WS_EX_TOPMOST ))
    GUICtrlSetBkColor (-1,$GUI_BKCOLOR_TRANSPARENT)
    DllCall("user32.dll", "int", "AnimateWindow", "hwnd", $Innen, "int", 400, "long", 0x00040010);Slide von unten ein
    GUISetState(@SW_SHOW,$Innen)
    GUISetState(@SW_SHOW,$Ramen)
    $Status = False
    #EndRegion ### END Koda GUI section ###
    GUIRegisterMsg($WM_MOVE, "_Move")
    While 1
    If _Over($Innen,$X) Then
    ;~ If $Status = False Then
    ;~ GUISetState (@SW_LOCK,$Innen)
    GUICtrlSetImage ($X,@ScriptDir & "\Skin\4.gif")
    ;~ GUISetState (@SW_UNLOCK,$Innen)
    ;~ $Status = True
    ;~ EndIf
    Else
    ;~ If $Status = True Then
    ;~ GUISetState (@SW_LOCK,$Innen)
    GUICtrlSetImage ($X,@ScriptDir & "\Skin\3.gif")
    ;~ GUISetState (@SW_UNLOCK,$Innen)
    ;~ $Status = False
    ;~ EndIf
    EndIf
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE, $X
    Exit
    EndSwitch
    Sleep (10)
    WEnd
    Func _Ecken($h_win, $i_x1, $i_y1, $i_x3, $i_y3)
    Local $XS_pos, $XS_ret, $XS_ret2
    $XS_pos = WinGetPos($h_win)
    $XS_ret = DllCall("gdi32.dll", "long", "CreateRoundRectRgn", "long", $i_x1, "long", $i_y1, "long", $XS_pos[2], "long", $XS_pos[3], "long", $i_x3, "long", $i_y3)
    If $XS_ret[0] Then
    $XS_ret2 = DllCall("user32.dll", "long", "SetWindowRgn", "hwnd", $h_win, "long", $XS_ret[0], "int", 1)
    EndIf
    EndFunc ;==>_GuiRoundCorners
    Func _Move()
    GUISetState (@SW_LOCK,$Innen)
    GUISetState (@SW_UNLOCK,$Innen)
    EndFunc
    Func _Over($hWnd,$hObj)
    Local $Curser
    $Curser = GUIGetCursorInfo($hWnd)
    If $Curser[4] = $hObj Then
    Return True
    Else
    Return False
    EndIf
    EndFunc

    [/autoit]
  • AutoIt ein VIRUS??????

    • funkey
    • 19. Februar 2009 um 20:28

    Habe mir für die Zukunft folgendes Skript geschrieben, das den Avira-Guard beim kompilieren vorübergehend deaktiviert:

    Bypass Avira (muss kompiliert werden)
    [autoit]

    #NoTrayIcon
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Compression=4
    #AutoIt3Wrapper_Res_Description=Programm zum vorübergehenden ausschalten der Avira-Guard
    #AutoIt3Wrapper_Res_Fileversion=1.0
    #AutoIt3Wrapper_Res_Language=3079
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include 'systray.au3'
    #include <Array.au3>

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

    Global $TrayPos[2], $MousePos = MouseGetPos()

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

    If $cmdline[0] = 1 Then
    If $cmdline[1] = 1 Then _ActivateAvira(1)
    If $cmdline[1] = 0 Then _ActivateAvira(0)
    EndIf

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

    Func _ActivateAvira($iOnOff = 1)
    Local $SysTitles = _SysTrayIconTitles()
    For $i = 0 To UBound($SysTitles) - 1
    If $SysTitles[$i] = 'Avira AntiVir Personal - Free Antivirus - SysTray' Then ExitLoop
    Next
    $TrayPos = _SysTrayIconPos($i)
    If StringInStr(_SysTrayIconTooltip($i), 'Guard: inaktiv') And $iOnOff = 1 Then _AviraSwitch()
    If StringInStr(_SysTrayIconTooltip($i), 'Guard: aktiv') And $iOnOff = 0 Then _AviraSwitch()
    EndFunc ;==>_ActivateAvira

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

    Func _AviraSwitch()
    MouseClick('left', $TrayPos[0] + 8, $TrayPos[1] + 8, 1, 0)
    MouseClick('right', $TrayPos[0] + 8, $TrayPos[1] + 8, 1, 0)
    MouseClick('left', $TrayPos[0] +20, $TrayPos[1] -100, 1, 0)
    MouseMove($MousePos[0], $MousePos[1], 0)
    EndFunc

    [/autoit]
    Beim jedem zu kompilierenden Skript eintragen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Run_Before="Bypass Avira.exe" 0
    #AutoIt3Wrapper_Run_After="Bypass Avira.exe" 1
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

    [/autoit]
  • AutoIt ein VIRUS??????

    • funkey
    • 18. Februar 2009 um 21:49

    Nein, ich hab mich geirrt. Beim Kompilieren kommt auch mit 7.01.02.44 18.02.2009 die Trojaner-Falsch-Meldung. Schade. :(

  • Ö3-Comedy Downloader

    • funkey
    • 18. Februar 2009 um 21:40

    ?( InetGet braucht keine INet.au3 ?(
    Bei mir geht's auch so!
    Eigentlich habe ich sogar Includes zuviel. Array.au3 war nur zum Testen und String.au3 brauche ich nicht mehr, da ich anstelle von _StringBetween jetzt StringRegExp verwende.

  • Problem mit FileCopy / DirCopy

    • funkey
    • 18. Februar 2009 um 21:24

    Ja Spoiler sind gut, dann kann ich das da verwenden ;)

  • Ö3-Comedy Downloader

    • funkey
    • 18. Februar 2009 um 20:29

    Hab noch ein paar Fehler ausgebessert

    Spoiler anzeigen
    [autoit]

    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=OE3.ico
    #AutoIt3Wrapper_Compression=4
    #AutoIt3Wrapper_Res_Comment=Ö3-Comedy Downloader
    #AutoIt3Wrapper_Res_Description=Ö3-Comedy Downloader
    #AutoIt3Wrapper_Res_Fileversion=1.1
    #AutoIt3Wrapper_Res_LegalCopyright=funkey 2009
    #AutoIt3Wrapper_Res_Language=3079
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <Array.au3>
    #include <String.au3>
    #include <IE.au3>
    Opt('TrayMenuMode', 1)
    HotKeySet('{Esc}', '_Abbruch')

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

    Global $Grundordner = "Ö3-Comedy"
    Global $Neues = ""
    Global $Titel = "Ö3-Comedy Downloader"
    Global $Abbruch = 0

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

    TraySetToolTip($Titel)
    $NameParameter = StringLeft(StringRight(@ScriptName, 5), 1)

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

    If $NameParameter = 'a' Then ;wenn der Dateiname auf 'a' endet (z.B. Downloada), dann wird die Sicherheitsfrage übergangen (z.B. für Autostart)
    $Starten = 6
    Else
    $Starten = MsgBox(36, $Titel, "Soll nach neuen Comedy-Dateien gesucht werden?")
    EndIf

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

    If $Starten <> 6 Then Exit
    TrayTip($Titel, "Suche nach neuen Dateien!", 30, 1)
    $oIE = _IECreate('http://oe3.orf.at/comedy', 0, 0)
    $Uebersicht = _IEBodyReadHTML($oIE)
    $Sendungen = StringRegExp($Uebersicht, '">(.*?)</(?i)a></h1>' , 3)
    $Links = StringRegExp($Uebersicht, '<(?i)h1><a href="(.*?)">' , 3)

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

    If Not FileExists(@ScriptDir & "\"&$Grundordner) Then DirCreate(@ScriptDir & "\"&$Grundordner)
    For $i = 0 To UBound($Sendungen) -1
    $Sendungen[$i] = StringReplace($Sendungen[$i],"&amp;","&")
    $Sendungen[$i] = StringReplace($Sendungen[$i],":","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"\","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"/","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"*","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"?",".")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"|","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"&gt;","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],"&lt;","_")
    $Sendungen[$i] = StringReplace($Sendungen[$i],'"',"'")
    If Not FileExists(@ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i]) Then
    $Test = DirCreate(@ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i])
    If Not $Test Then
    MsgBox(16, "Fehler", " Es gab einen Fehler beim Erstellen des Ordners "&$Sendungen[$i]&" !")
    Exit
    EndIf
    EndIf
    Next

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

    For $i = 0 To UBound($Links) -1
    TrayTip($Titel, "Suche neue Dateien in "&@CRLF&$Sendungen[$i], 30, 1)
    _IENavigate($oIE, $Links[$i])
    $MP3_Seite = _IEBodyReadHTML($oIE)
    $MP3s = StringRegExp($MP3_Seite, '<(?i)a href="(.*?)">MP3<' , 3)
    For $m = 0 To UBound($MP3s) -1
    $MP3FileName = StringTrimLeft($MP3s[$m], StringInStr($MP3s[$m], "/", 1, -1))
    If Not FileExists(@ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i] &"\"& $MP3FileName) Then
    TrayTip($Titel, $Sendungen[$i]&@CRLF&$MP3FileName, 30, 1)
    InetGet($MP3s[$m], @ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i] &"\"& $MP3FileName)
    $Neues &= $Sendungen[$i] &"\"& $MP3FileName&@CRLF
    EndIf
    If $Abbruch = 1 Then ExitLoop
    Next
    If $Abbruch = 1 Then ExitLoop
    Next
    _IEQuit($oIE)

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

    For $i = 0 To UBound($Links) -1
    If DirGetSize(@ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i]) = 0 Then DirRemove(@ScriptDir & "\"&$Grundordner&"\" & $Sendungen[$i])
    Next

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

    TrayTip("","",0)
    If $Neues = "" Then
    MsgBox(64, $Titel, " Es wurden keine neuen Dateien gefunden!")
    Else
    MsgBox(64, $Titel, $Neues)
    EndIf

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

    Func _Abbruch()
    $Abbruch = 1
    EndFunc

    [/autoit]
  • Webfenster schrumpfen

    • funkey
    • 18. Februar 2009 um 19:00

    Nichts zu danken. Du kannst den Thread auf gelöst stellen, indem du den ersten Beitrag editierst. ;)

  • Webfenster schrumpfen

    • funkey
    • 18. Februar 2009 um 18:41

    Wiß ja nicht genau was ihr wollt, aber vllt bringt euch das weiter:

    Spoiler anzeigen
    [autoit]

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

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

    $oIE = _IECreateEmbedded()
    $hGui = GUICreate("Bringt uns nicht Weiter^^", 560, 500, 100, 100, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS)
    $hGuiChild = GUICreate("", 760, 1100, -200, -532, $WS_CHILD, -1, $hGui)
    GUISetState()
    $GUIActiveX = GUICtrlCreateObj($oIE, 0, 0, 1000, 1100)
    GUISetState(@SW_SHOW, $hGui) ;Show GUI MouseClick("left", 539, 68) MouseMove (222,300) MouseClick ("left", 222,300)

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

    _IENavigate($oIE, "http://www.rev6.com/stats/servercapacity.asp")
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    EndSwitch
    WEnd

    [/autoit]
  • AutoIt ein VIRUS??????

    • funkey
    • 18. Februar 2009 um 18:13

    Hab keine Probleme mit 7.01.02.44. :P gerade den PC gestartet und wohl schon wieder Glück gehabt! :D

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™