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

Beiträge von autoBert

  • Case problem..

    • autoBert
    • 1. August 2015 um 13:37

    Und wie soll man dann deinen Fehler beim umsetzen des Beispiels auf dein Skript finden?

  • Case problem..

    • autoBert
    • 31. Juli 2015 um 18:29

    Dein Skript ist nicht ausführbar:

    Code
    >"C:\Program Files\AutoIt3\SciTE\AutoIt3Wrapper\AutoIt3Wrapper.exe" /run /prod /ErrorStdOut /in "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3" /UserParams    
    +>18:27:06 Starting AutoIt3Wrapper v.14.801.2025.0 SciTE v.3.4.4.0   Keyboard:00000407  OS:WIN_81/  CPU:X64 OS:X64    Environment(Language:0407)
    +>         SciTEDir => C:\Program Files\AutoIt3\SciTE   UserDir => C:\Users\Bert\AppData\Local\AutoIt v3\SciTE\AutoIt3Wrapper   SCITE_USERHOME => C:\Users\Bert\AppData\Local\AutoIt v3\SciTE 
    +>Check for missing standard constants/udf include files: 2 include(s) were added
    >Running AU3Check (3.3.14.1)  from:C:\Program Files\AutoIt3  input:C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(25,34) : warning: $mu_online_reconnect_main: possibly used before declaration.
    		 Case $mu_online_reconnect_main
    		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(29,19) : warning: $slot_1: possibly used before declaration.
    					 Case $slot_1
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(31,19) : warning: $slot_2: possibly used before declaration.
    					 Case $slot_2
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(33,19) : warning: $slot_3: possibly used before declaration.
    					 Case $slot_3
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(35,19) : warning: $slot_4: possibly used before declaration.
    					 Case $slot_4
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(37,19) : warning: $slot_5: possibly used before declaration.
    					 Case $slot_5
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(39,19) : warning: $slot_6: possibly used before declaration.
    					 Case $slot_6
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(41,19) : warning: $slot_7: possibly used before declaration.
    					 Case $slot_7
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(43,19) : warning: $slot_8: possibly used before declaration.
    					 Case $slot_8
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(45,20) : warning: $options: possibly used before declaration.
    					 Case $options
    					~~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(25,34) : error: $mu_online_reconnect_main: undeclared global variable.
    		 Case $mu_online_reconnect_main
    		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(29,19) : error: $slot_1: undeclared global variable.
    					 Case $slot_1
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(31,19) : error: $slot_2: undeclared global variable.
    					 Case $slot_2
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(33,19) : error: $slot_3: undeclared global variable.
    					 Case $slot_3
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(35,19) : error: $slot_4: undeclared global variable.
    					 Case $slot_4
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(37,19) : error: $slot_5: undeclared global variable.
    					 Case $slot_5
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(39,19) : error: $slot_6: undeclared global variable.
    					 Case $slot_6
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(41,19) : error: $slot_7: undeclared global variable.
    					 Case $slot_7
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(43,19) : error: $slot_8: undeclared global variable.
    					 Case $slot_8
    					~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(45,20) : error: $options: undeclared global variable.
    					 Case $options
    					~~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(30,20) : error: _slot_1check(): undefined function.
    						_slot_1check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(32,20) : error: _slot_2check(): undefined function.
    						_slot_2check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(34,20) : error: _slot_3check(): undefined function.
    						_slot_3check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(36,20) : error: _slot_4check(): undefined function.
    						_slot_4check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(38,20) : error: _slot_5check(): undefined function.
    						_slot_5check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(40,20) : error: _slot_6check(): undefined function.
    						_slot_6check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(42,20) : error: _slot_7check(): undefined function.
    						_slot_7check()
    						~~~~~~~~~~~~~^
    "C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3"(44,20) : error: _slot_8check(): undefined function.
    						_slot_8check()
    						~~~~~~~~~~~~~^
    C:\Users\Bert\AutoIt3.My\Test\2Guisasd.au3 - 18 error(s), 10 warning(s)
    !>18:27:08 AU3Check ended. Press F4 to jump to next error.rc:2
    +>18:27:08 AutoIt3Wrapper Finished.
    >Exit code: 2    Time: 2.533
    Alles anzeigen
  • AutoIT ist ein Virus.

    • autoBert
    • 24. Juli 2015 um 15:46
    Zitat von autoiter

    ... sondern die AV-Hersteller bieten ein standardisiertes Verfahren an, mit dem man seine fälschlich als Virus erkannten Programme einreichen kann. Im Link in meinem letzten Post wird das gut beschrieben. Man muss da nichts groß begründen, sondern nur die exe an die richtige Stelle schicken..

    Stimmt geht problemlos.

    Zitat von autoiter

    In wenigen Stunden erhält man dann in der Regel die Meldung, dass es sich um einen False-Postive-Alarm gehandelt hat und diese Falschmeldung in einem der nächsten Signatur-Updates behoben wird.
    Nach zwei Tagen ist Ruhe. Eigentlich ist das also keine große Sache.

    Stimmt nur teilweise, hat manchmal bis 10 Tage gedauert und nach einem Update meines Programmes musste ich die Prozedur wiederholen. Besonders gerne werden Programme die sich selbst updaten als Viren erkannt.

  • _FTP_ListToArrayEx Problem

    • autoBert
    • 22. Juli 2015 um 15:30

    Der Fehler liegt in deinem Skript. Bei mir funktioniert dieses unter AutoIt 3.3.12.0:

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

    #include <FTPEx.au3>
    #include <Array.au3>
    #include <File.au3>
    $RemoteDir = "/AutoIt3.My"
    $sServer = '127.0.0.1'
    $sUser = 'Bert'
    $sPwd = 'Test'
    $sFile = @ScriptDir & "\FTP_ListToArrayEx.Txt"
    If Ping($sServer) > 0 Then
    $Open = _FTP_Open('FTP')
    $Conn = _FTP_Connect($Open, $sServer, $sUser, $sPwd)
    _FTP_DirSetCurrent($Conn, $RemoteDir)
    $aFile = _FTP_ListToArrayEx($Conn, 0)
    _ArrayDisplay($aFile)
    _FileWriteFromArray($sFile, $aFile)
    _FTP_Close($Conn)
    _FTP_Close($Open)
    EndIf

    [/autoit]
  • _GUICtrlListView_SetColumnWidth und Array

    • autoBert
    • 22. Juli 2015 um 15:09

    Ein Blick in die Hilfe zu IniRead bringt die Aufklärung warum explizit eine Umwandlung nötig ist:

    Zitat von AutoIt-Help zu IniRaed

    IniRead
    Reads a value from a standard format .ini file.


    IniRead ( "filename", "section", "key", "default" )
    .
    .
    .

    Return Value
    Success: the requested key value as a string.
    Failure: the default string if requested key not found.

    Alles anzeigen
  • _GUICtrlListView_SetColumnWidth und Array

    • autoBert
    • 21. Juli 2015 um 20:08

    Setze Int() vor _GUICtrlListView_SetColumnWidth:

    [autoit]

    #include <Array.au3>
    #include <SQLite.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>
    #include <GUIListView.au3>

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

    Opt("MustDeclareVars", 1)

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

    __Start()
    Exit

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

    Func __Start()

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

    Local $hDB ; Handle für die Datenbank
    Local $aResult, $iRows, $iColumns
    Local $sListViewText = ""
    Local $idMainGUI
    Local $idListView, $ListViewID
    Local $aColumnWidth[0]

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

    Local $aFenstergroesse = __Fenstergroesse() ; liest die Daten für die Fenstergröße
    ; _ArrayDisplay($aFenstergroesse)
    Local $sNameDB = 'Daten.sqlite'

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

    _SQLite_Startup()
    If @error Then Return MsgBox(0, '_SQLite_Startup', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0

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

    If FileExists($sNameDB) Then
    $hDB = _SQLite_Open($sNameDB)
    If @error Then Return MsgBox(0, '_SQLite_Open', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0
    Else
    $hDB = _SQLite_Open($sNameDB) ; erstellt die DB
    If @error Then Return MsgBox(0, '_SQLite_Open', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0
    ; SQLite-Anweisung muß in einer Zeile erfolgen
    _SQLite_Exec($hDB, 'CREATE TABLE Kunden (ID INTEGER PRIMARY KEY AUTOINCREMENT, Kundennummer TEXT, Firma TEXT, Name TEXT, Vorname TEXT, StrasseNr TEXT, PLZ TEXT, Ort TEXT, Telefon TEXT, EMail TEXT, Homepage TEXT, Anrede TEXT, Land TEXT);')
    EndIf

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

    _SQLite_GetTable2d($hDB, 'Select * FROM Kunden; ', $aResult, $iRows, $iColumns) ; liest die Daten aus der DB
    If @error Then Return MsgBox(0, '_SQLite_GetTable2d', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0

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

    For $iC = 0 To $iColumns - 1 ; die Spaltenüberschriften
    $sListViewText &= $aResult[0][$iC] & '|'
    Next

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

    $idMainGUI = GUICreate('Datenbank', $aFenstergroesse[2], $aFenstergroesse[3], $aFenstergroesse[0], $aFenstergroesse[1], $WS_SIZEBOX)
    $idListView = GUICtrlCreateListView($sListViewText, 0, 30, ($aFenstergroesse[2]) - 2, ($aFenstergroesse[3]) / 2)

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

    For $iR = 1 To $iRows
    For $iC = 0 To $iColumns - 1
    $ListViewID &= $aResult[$iR][$iC] & '|'
    Next
    GUICtrlCreateListViewItem($ListViewID, $idListView)
    Next

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

    For $i = 0 To $iColumns - 1 ; liest die Spaltenbreite
    _ArrayAdd($aColumnWidth, IniRead(@ScriptDir & '\Daten.ini', 'Listview', $i, 70))
    If @error Then MsgBox(0, '_ArrayAdd', '@error: ' & @error & @CRLF & '@extended: ' & @extended)
    Next

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

    If IsArray($aColumnWidth) Then
    _ArrayDisplay($aColumnWidth) ; die gelesenen Werte stimmen
    Else
    MsgBox(0, '', '$aColumnWidth ist kein Array', 1)
    Return 0
    EndIf
    ; hier sollte die Spaltenbreite gesetzt werden
    If Not _GUICtrlListView_SetColumnWidth($idListView, 0, int($aColumnWidth[0])) Then MsgBox(0, '_GUICtrlListView_SetColumnWidth', 'ID', 1)
    ConsoleWrite(_GUICtrlListView_GetColumnWidth($idListView, 0)&@crlf)
    ; so geht es
    ; If Not _GUICtrlListView_SetColumnWidth($idListView, 0, 55) Then MsgBox(0, '_GUICtrlListView_SetColumnWidth', 'ID', 1)
    GUISetState(@SW_SHOW, $idMainGUI)
    While 1
    Switch GUIGetMsg()
    Case $GUI_EVENT_CLOSE
    For $i = 0 To _GUICtrlListView_GetColumnCount($idListView) - 1 ; speichert die Spaltenbreiten in der .ini
    If IniWrite(@ScriptDir & '\Daten.ini', 'Listview', $i, _
    _GUICtrlListView_GetColumnWidth($idListView, $i)) <> 1 Then _
    MsgBox(0, 'IniWrite', 'Fehler beim Schreiben der ' & $i & ' .ten Spalte', 1)
    Next
    ExitLoop
    EndSwitch
    WEnd

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

    $aFenstergroesse = WinGetPos('Datenbank')
    __FensterDatenSchreiben($aFenstergroesse) ; speichern der Fensterdaten in der .ini
    GUIDelete()

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

    _SQLite_Close()
    If @error Then Return MsgBox(0, '_SQLite_Close', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0
    _SQLite_Shutdown()
    If @error Then Return MsgBox(0, '_SQLite_Shutdown', '@error: ' & @error & @CRLF & '@extended: ' & @extended) * 0

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

    Return 1

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

    EndFunc ;==>__Start

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

    Func __Fenstergroesse()

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

    Local $aFenstergroesse[4]
    Local $sIniDatei = @ScriptDir & '\Daten.ini'

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

    If FileExists($sIniDatei) Then
    $aFenstergroesse[0] = IniRead($sIniDatei, 'Fenster', 'X', 0)
    $aFenstergroesse[1] = IniRead($sIniDatei, 'Fenster', 'Y', 0)
    $aFenstergroesse[2] = IniRead($sIniDatei, 'Fenster', 'Breite', -1)
    $aFenstergroesse[3] = IniRead($sIniDatei, 'Fenster', 'Hoehe', -1)
    Else
    $aFenstergroesse[0] = -1
    $aFenstergroesse[1] = -1
    $aFenstergroesse[2] = 1200
    $aFenstergroesse[3] = 700
    EndIf

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

    Return $aFenstergroesse

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

    EndFunc ;==>__Fenstergroesse

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

    Func __FensterDatenSchreiben($aFenstergroesse)

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

    Local $sIniDatei = @ScriptDir & '\Daten.ini'

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

    If IniWrite($sIniDatei, 'Fenster', 'X', $aFenstergroesse[0]) <> 1 Then _
    Return MsgBox(0, '__FensterDatenSchreiben', 'Fehler beim Schreiben der X-Position') * 0
    If IniWrite($sIniDatei, 'Fenster', 'Y', $aFenstergroesse[1]) <> 1 Then _
    Return MsgBox(0, '__FensterDatenSchreiben', 'Fehler beim Schreiben der Y-Position') * 0
    If IniWrite($sIniDatei, 'Fenster', 'Breite', $aFenstergroesse[2] - 14) <> 1 Then _
    Return MsgBox(0, '__FensterDatenSchreiben', 'Fehler beim Schreiben der Fensterbreite') * 0
    If IniWrite($sIniDatei, 'Fenster', 'Hoehe', $aFenstergroesse[3] - 14) <> 1 Then _
    Return MsgBox(0, '__FensterDatenSchreiben', 'Fehler beim Schreiben der Fensterhöhe') * 0
    Return 1

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

    EndFunc ;==>__FensterDatenSchreiben

    [/autoit]
  • Benötige hilfe zu, IniWrite; Section; Key

    • autoBert
    • 16. Juli 2015 um 20:02

    Dann must du dich an die Entwickler von AutoIt wenden, damit diese IniWrite umstricken.

    Da das ganze dann aber nicht mehr zu MS-Vorgaben kompatibel wäre kannst du dir die Kontaktaufnahme auch sparen.

  • GUICtrlCreateTab() TopRight Background

    • autoBert
    • 14. Juli 2015 um 16:45

    Probiere das gewünschte Ergebnis durch andere GUI-Elemente nachzustellen, z.B. so:

    C
    #include <StaticConstants.au3>
    #include <GUIConstantsEx.au3>
    
    
    Example()
    
    
    Func Example()
    	GUICreate("My GUI Tab", 250, 150); will create a dialog box that when displayed is centered
    
    
    	GUISetBkColor(0x00E0FFFF)
    	GUISetFont(9, 300)
    	GUICtrlCreateGraphic(10,30,200,80,$SS_GRAYRECT)
    	Local $idTab = GUICtrlCreateTab(10, 10, 150, 20)
    	GUICtrlCreateTabItem("tab0")
    	GUICtrlCreateLabel("label0", 30, 80, 50, 20)
    	GUICtrlCreateButton("OK0", 20, 50, 50, 20)
    	GUICtrlCreateInput("default", 80, 50, 70, 20)
    
    
    	GUICtrlCreateTabItem("tab----1")
    	GUICtrlCreateLabel("label1", 30, 80, 50, 20)
    	GUICtrlCreateCombo("", 20, 50, 60, 120)
    	GUICtrlSetData(-1, "Trids|CyberSlug|Larry|Jon|Tylo|guinness", "Jon"); default Jon
    	GUICtrlCreateButton("OK1", 80, 50, 50, 20)
    
    
    	GUICtrlCreateTabItem("tab2")
    	GUICtrlSetState(-1, $GUI_SHOW); will be display first
    	GUICtrlCreateLabel("label2", 30, 80, 50, 20)
    	GUICtrlCreateButton("OK2", 140, 50, 50)
    
    
    	GUICtrlCreateTabItem(""); end tabitem definition
    
    
    	GUICtrlCreateLabel("Click on tab and see the title", 20, 130, 250, 20)
    
    
    	GUISetState(@SW_SHOW)
    
    
    	Local $idMsg
    	; Loop until the user exits.
    	While 1
    		$idMsg = GUIGetMsg()
    
    
    		If $idMsg = $GUI_EVENT_CLOSE Then ExitLoop
    		If $idMsg = $idTab Then
    			; display the clicked tab
    			WinSetTitle("My GUI Tab", "", "My GUI Tab" & GUICtrlRead($idTab))
    		EndIf
    	WEnd
    EndFunc   ;==>Example
    Alles anzeigen

    oder mit einem eingefärbtem Label ohne Text

  • [Beispiel] FTP-Downloader (rekursive Download's )

    • autoBert
    • 13. Juli 2015 um 15:53
    Zitat von Buphx

    ich glaube die IP ist falsch (ganz oben), muss doch eigentlich 127.0.0.1 heißen, also eine 0 mehr :P

    Dann habe ich mich wohl beim Einrichten meines lokalen FTP-Servers vertan. Jedenfalls funktioniert das Skript bei mir mit dieser Adresse.

  • [Beispiel] FTP-Downloader (rekursive Download's )

    • autoBert
    • 10. Juli 2015 um 18:55

    Hallo Com,

    hier ein altes Projekt auf die aktuelle Stable (3.3.12.0) angepasst:

    [autoit]

    #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <EditConstants.au3>
    #include "FTP_FileList_Recursiv.au3"
    #include <GuiScrollBars.au3>

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

    Opt('MustDeclareVars', 1)

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

    Global $sServer='127.0.1', $sUser='Bert',$sPass='Test'

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

    _CreateGui()

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

    Func _CreateGui()
    Local $l_InternetSession = -99, $l_FTPSession
    Local $errOpen, $errFTP
    Local $nMsg
    Local $iMaxDepth=3;max 3 vereichnisebenen <1=unendliche Rekrusionstiefe
    Local $mainGui = GUICreate("FTP-Downloader", 623, 450, 271, 235)
    Local $idLblLog = GUICtrlCreateEdit("", 8, 5, 467, 315, BitOR($WS_HSCROLL, $WS_VSCROLL))
    Local $hLog = GUICtrlGetHandle($idLblLog)
    Local $idPrgFile = GUICtrlCreateProgress(8, 344, 598, 25)
    Local $hGuiChild1 = GUICreate("Child1", 594, 21, 10, 346, $WS_POPUP, $WS_EX_MDICHILD, $mainGui)
    Local $idLblFilePer = GUICtrlCreateLabel("", 2, 2, 590, 17, $SS_CENTER)
    GUICtrlSetFont(-1, 11, 2800)
    WinSetTrans($hGuiChild1, "", 180)
    GUISwitch($mainGui)
    Local $idLblFile = GUICtrlCreateLabel("", 8, 322, 594, 17)
    Local $idPrgKB = GUICtrlCreateProgress(8, 392, 598, 25)
    Local $hGuiChild2 = GUICreate("Child2", 595, 23, 10, 394, $WS_POPUP, $WS_EX_MDICHILD, $mainGui)
    Local $idLblKBPer = GUICtrlCreateLabel("", 2, 1, 590, 19, $SS_CENTER)
    GUICtrlSetFont(-1, 11, 2800)
    WinSetTrans($hGuiChild2, "", 180)
    GUISwitch($mainGui)
    Local $idLblKB = GUICtrlCreateLabel("", 8, 372, 594, 17)
    GUICtrlCreateLabel('Rekursionstiefe"',530,5)
    Local $idInpMaxDepth= GUICtrlCreateInput("3",483,5,35,22,$ES_NUMBER)
    GUICtrlSetTip(-1,'Maxinale Rekursionstiefe,<1=unendlich')
    Local $idBtnConnect = GUICtrlCreateButton("&Verbinden", 483, 40) ;verbinden mit FTP-Server
    Local $idBtnDisconnect = GUICtrlCreateButton("&Trennen", 483, 80) ;vom Server trennen
    Local $idBtnDL = GUICtrlCreateButton("&Download", 483, 120) ;Download starten
    Local $idBtnExit = GUICtrlCreateButton("Be&enden", 483, 160) ;Exit
    GUICtrlSetState($idBtnDL, $Gui_DISABLE)
    GUICtrlSetState($idBtnDisconnect, $Gui_DISABLE)

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

    #Region;falls aktiviert Positionen noch anpasser und Labeltext entfernen
    Local $idLblColapsedTime = GUICtrlCreateLabel("", 8, 420, 400, 17)

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

    Local $idLblKBperSec = GUICtrlCreateLabel("", 450, 420, 500, 17)
    #EndRegion
    GUISetState(@SW_SHOW, $hGuiChild1)
    GUISetState(@SW_SHOW, $hGuiChild2)
    _GUIScrollBars_Init(GUICtrlGetHandle($idLblLog))
    GUISetState(@SW_SHOW, $mainGui)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $Gui_EVENT_CLOSE, $idBtnExit
    If $l_InternetSession <> -99 Then _FTP_Close($l_InternetSession)
    Exit
    Case $idBtnConnect
    $l_InternetSession = _FTP_Open('AutoItZilla') ;Öffnet eine FTP Sitzung
    $errOpen = @error
    If Not @error Then
    _Report('Internetsitzung geöffnet',$hLog,1)
    $l_FTPSession = _FTP_Connect($l_InternetSession, $sServer, $sUser, $sPass, 0) ;Verbindet zu einem FTP Server
    $errFTP = @error
    If Not @error Then
    _Report('verbunden mit '&$sServer,$hLog,1)
    GUICtrlSetState($idBtnDL, $Gui_ENABLE)
    GUICtrlSetState($idBtnDisconnect, $Gui_ENABLE)
    GUICtrlSetState($idBtnConnect, $Gui_DISABLE)
    Else
    _Report('Verbindung mit '&$sServer & ' fehlgeschlagen: '& $errFTP,$hLog,1)
    EndIf
    Else
    _Report('öffnen der Internetsitzung fehlgeschlagen: ' & $errOpen,$hLog, 1)
    EndIf
    Case $idBtnDisconnect
    _FTP_Close($l_FTPSession)
    _Report('Ftpsitzung geschlossen',$hLog,1)
    _FTP_Close($l_InternetSession)
    _Report('Internetsitzung geschlossen',$hLog,1)
    $l_InternetSession = -99
    GUICtrlSetState($idBtnDL, $Gui_DISABLE)
    GUICtrlSetState($idBtnDisconnect, $Gui_DISABLE)
    GUICtrlSetState($idBtnConnect, $Gui_ENABLE)
    Case $idBtnDL
    $iMaxDepth=Int(GUICtrlRead($idInpMaxDepth))
    GUICtrlSetState($idBtnDL, $Gui_DISABLE)
    GUICtrlSetState($idBtnExit, $Gui_DISABLE)
    GUICtrlSetState($idBtnDisconnect, $Gui_DISABLE)
    _getAllFTPFilesRekursiv($l_FTPSession, '/', @ScriptDir & "\Temp", $iMaxDepth, 0, $idPrgKB, $idLblKB, $idLblKBPer, $idPrgFile, $idLblFile, $idLblFilePer, $idLblColapsedTime, $idLblKBperSec, $idLblLog) ;<======= anpassen Remotepfad der inkl. aller Unerordner heruntergeladen werden soll
    ;_getAllFTPFilesRekursiv($l_FTPSession, $sRemote = "", $sLocal = @TempDir, $iMaxDepth , $iDebug, $idPrgKB, $idLblKB, $idLblKBPer, $idPrgFile, $idLblFile, $idLblFilePer, $idLblColapsed = 0, $idLblKBperSec, $idLblLog)
    _Report('Download abgeschlossen',$hLog,1)
    _FTP_Close($l_FTPSession)
    _Report('Ftpsitzung geschlossen',$hLog,1)
    _FTP_Close($l_InternetSession)
    _Report('Internetsitzung geschlossen',$hLog,1)
    GUICtrlSetState($idBtnConnect, $Gui_ENABLE)
    ;Das Schliessen der Verbindung ist leider notwendig, da ansonsten der Progress in KB nicht funktioniert
    ; GUICtrlSetState($idBtnDL, $Gui_ENABLE)
    ; GUICtrlSetState($idBtnExit, $Gui_ENABLE)
    ; GUICtrlSetState($idBtnDisconnect, $Gui_ENABLE)
    EndSwitch
    WEnd
    EndFunc ;==>_CreateGui

    [/autoit]


    die nötigen Funktionen habe ich in FTP_FileList_Recursiv.au3 ausgelagert. Diese UDF beinhaltet:

    • _getAllFTPFilesRekursiv: lädt einen bestimmten Ordner inkl. aller Unterverzeichnisse herunter, die zu Downloadenden Dateien werden mit _FTP_FileList_Rekursiv2D ermittelt.
    • _createLocalDirIfNecessary prüft ob für eine Datei die lokale Verzeichnisstruktur besteht, falls nötig wird diese angelegt
    • _report wird benutzt um Meldungen in die Console bzw. ein Editfeld einzutragen.
    • _FTP_FileList_Rekursiv2D erhält alle nötigen Infos durch Aufruf von _FTP_FileList_Rekursiv und ermittelt die Gesamtgröße
    • _FTP_FileList_Rekursiv füllt ein Array mit Dateien (und Verzeichnissen wenn $bFolders true) des FTP-Pfades inkl. aller Unterverzeichnisse. Diese Funktion sammelt die Daten und wird von _FTP_FileList_Rekursiv2D aufgerufen. Sie kann aber auch einzeln aufgerufen werden.

    viel Spass mit der UDF für die das Beispiel ist,

    autoBert

    Dateien

    FTP_FileList_Recursiv.au3 12,64 kB – 655 Downloads
  • WinHttp Cookies

    • autoBert
    • 9. April 2013 um 16:21

    Du wirst wohl nicht der 1. sein der dieses Problem hat also Tante Google gezielt fragen, alle Möglichkeiten durchtesten oder die URL benennen und deine bisherigen erfolglosen Tests zeigen damit andere wissen was sie nicht mehr testen müssen.

    mfg autoBert

  • _ArraySort sortiert Zahlen "alphabetisch" nicht numerisch

    • autoBert
    • 8. April 2013 um 22:00

    bitte um Aufklärung, hat sich bei _ArraySort seit 3.3.6.1 etwas geändert? Ich benutze nämlich diese immer noch da ich am Anfang speziell bei _FTP_ListToArray2 Rückmeldunen bekam das meine Skripte unter 3.3.8.1 nicht mehr laufen. Zum Zahlen und Datum zu sortieren habe ich mir damals extra eine UDF (siehe Signatur) geschrieben.
    Wenn jetzt _ArraySort automatisch unterscheiden kann (gleiche Datentypen in der Spalte vorausgesetzt) nach welchem Schema sortiert werden soll wäre dies ein echter Fortschritt und ein Grund auf 3.3.8.1 zu wechseln.

    mfg autoBert

  • "Best of" Bilder Script

    • autoBert
    • 8. April 2013 um 11:30

    Tausche die Original _RecursiveFileListToArray gegen:

    Spoiler anzeigen
    [autoit]

    ;===============================================================================
    ; Function Name: _RecursiveFileListToArray($sPath[, $sPattern][, $iFlag][, $iFormat][, $fRecursion][, $sDelim])
    ; Description:: gibt Verzeichnisse (rekursiv) und/oder Dateien zurück, die einem RegExp-Pattern entsprechen
    ; Parameter(s): $sPath = Startverzeichnis
    ; $sPattern = ein beliebiges RexExp-Pattern für die Auswahl
    ; $iFlag = Auswahl
    ; 0 = Dateien & Verzeichnisse
    ; 1 = nur Dateien
    ; 2 = nur Verzeichnisse
    ; $iFormat = Rückgabeformat
    ; 0 = String
    ; 1 = Array mit [0] = Anzahl
    ; 2 = Nullbasiertes Array
    ; $fRecursion = Verzeichnisse rekursiv durchsuchen
    ; False = Nein
    ; True = Ja
    ; $sDelim = Trennzeichen für die String-Rückgabe
    ; Requirement(s): AutoIt 3.3.0.0
    ; Return Value(s): Array/String mit den gefundenen Dateien/Verzeichnissen
    ; Author(s): Oscar (http://www.autoit.de)
    ; Anregungen von: bernd670 (http://www.autoit.de)
    ; und: AspirinJunkie (http://www.autoit.de)
    ;===============================================================================
    Func _RecursiveFileListToArray($sPath, $sPattern = '', $iFlag = 0, $iFormat = 1, $fRecursion = True, $sDelim = @CRLF, $fOpenDLL = True)
    Local $hSearch, $sFile, $sReturn = '', $aD
    Local Static $hDll
    If StringRight($sPath, 1) <> '\' Then $sPath &= '\'
    $hSearch = FileFindFirstFile($sPath & '*')
    If @error Or $hSearch = -1 Then
    If $iFormat And $sReturn = '' Then Return SetError(1, 1, StringSplit($sReturn, '', $iFormat))
    If $iFormat Then Return SetError(1, 2, StringSplit(StringTrimRight($sReturn, StringLen($sDelim)), $sDelim, $iFormat))
    Return $sReturn
    EndIf
    If $fOpenDLL Then $hDll = DllOpen('kernel32.dll')
    While True
    $sFile = FileFindNextFile($hSearch)
    If @error Then ExitLoop
    If @extended Then
    $aD = DllCall($hDll, 'dword', 'GetFileAttributesW', 'wstr', $sPath & $sFile)
    If @error Or BitAND($aD[0], 0x400) Then ContinueLoop
    If StringRegExp($sPath & $sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 2) Then $sReturn &= $sPath & $sFile & '\' & $sDelim
    If $fRecursion Then $sReturn &= _RecursiveFileListToArray($sPath & $sFile & '\', $sPattern, $iFlag, 0, True, $sDelim, False)
    ContinueLoop
    EndIf
    If StringRegExp($sFile, $sPattern) And ($iFlag = 0 Or $iFlag = 1) Then $sReturn &= $sPath & $sFile & $sDelim
    WEnd
    FileClose($hSearch)
    If $fOpenDLL Then DllClose($hDll)
    If $iFormat And $sReturn = '' Then Return SetError(0, 1, StringSplit($sReturn, '', $iFormat))
    If $iFormat Then Return SetError(0, 2, StringSplit(StringTrimRight($sReturn, StringLen($sDelim)), $sDelim, $iFormat))
    Return $sReturn
    EndFunc ;==>_RecursiveFileListToArray

    [/autoit]

    dann ist der Fehler in Zeie 80 behoben.

    mfg autoBert

  • _StringBetween problem

    • autoBert
    • 7. April 2013 um 14:21

    Hallo butter,

    ein bischen logisches Denken hilft und du verstehst warunm deine Versuche nicht klappen können.

    Erst nach eigenem logischen Denken öffner
    Zitat

    Schade, du hast selbst nicht die Erklärung gefunden.

    Wo nichts ist kann nichts gefunden werden.


    du solltest also beschreiben was du erreichen wilst.

    mfg autoBert

  • PHP und _INetGetSource / Variable übergeben / kein "+" mehr in SQL Tabelle / htmlentities??urlencode??

    • autoBert
    • 6. April 2013 um 23:53
    Zitat von The Dutch

    Ich denke es muss an dem Autoitteil liegen

    denke ich nicht denn lt. Funktionskopf:

    Zitat

    #FUNCTION# ====================================================================================================================
    ; Name...........: _WinHttpSimpleRequest
    ; Description ...: A function to send a request in a simpler form
    ; Syntax.........: _WinHttpSimpleRequest($hConnect, $sType, $sPath [, $sReferrer = Default [, $sData = Default [, $sHeader = Default [, $fGetHeaders = Default [, $iMode = Default ]]]]])
    ; Parameters ....: $hConnect - Handle from _WinHttpConnect
    ; $sType - [optional] GET or POST (default: GET)
    ; $sPath - [optional] request path (default: "" - empty string; meaning 'default' page on the server)
    ; $sReferrer - [optional] referrer (default: $WINHTTP_NO_REFERER)
    ; $sData - [optional] POST-Data (default: $WINHTTP_NO_REQUEST_DATA)
    ; $sHeader - [optional] additional Headers (default: $WINHTTP_NO_ADDITIONAL_HEADERS)
    ; $fGetHeaders - [optional] return response headers (default: False)
    ; $iMode - [optional] reading mode of result (default: 0)
    ; |0 - ASCII-text
    ; |1 - UTF-8 text
    ; |2 - binary data
    ; Return values .: Success - response data if $fGetHeaders = False (default)
    ; |Array if $fGetHeaders = True
    ; | [0] - response headers
    ; | [1] - response data
    ; Failure - 0 and set @error
    ; |1 - could not open request
    ; |2 - could not send request
    ; |3 - could not receive response
    ; |4 - $iMode is not valid
    ; Author ........: ProgAndy
    ; Modified.......: trancexx
    ; Remarks .......:
    ; Related .......: _WinHttpSimpleSSLRequest, _WinHttpSimpleSendRequest, _WinHttpSimpleSendSSLRequest, _WinHttpQueryHeaders, _WinHttpSimpleReadData
    ; Link ..........:
    ; Example .......:
    ; ===============================================================================================================================

    Alles anzeigen

    übergibst du die Werte in der richtigen Reihenfolge.

    Mache daher ein eigenes Thema auf und stelle dort auch die Rückgabe von _WinHttpSimpleRequest ein.

    mfg autoBert

  • Wechsel zwischen Hover- und Klick-Funktion

    • autoBert
    • 6. April 2013 um 23:29
    Zitat von btcode

    Ich will ja noch was lernen, bin ja nicht dumm. Mitleid muss echt nicht sein. ;)


    Nachdem ich gestern auf das Thema gestossen bin habe ich das nächsrliegende ausprobiert und die registrierten Funktionen auf die übliche Art (deregistrieren einer Funktion durch "") getestet und die Umschaltung getestet. Das ich dir das Ergebnis hier eingestellt habe hat nichts mit Mitleid zu tun sondern das es schon vor meinem 1. Beitrag fertig war und bis ich lange theoretisch erkläre wie es funktioniert war dies der einfachere Weg.

    mfg autoBert

  • IE Fenster "Seiten Ladestatus" abfragen

    • autoBert
    • 6. April 2013 um 23:03

    Lass mal dieses Skript unverändert laufen:

    Spoiler anzeigen
    [autoit]

    #include <IE.au3>

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

    Dim $oIE = _IECreate()
    ObjEvent($oIE, "IEEvent_", "DWebBrowserEvents2")
    $bTimeOut = False
    $iTimeOut=900000 ;bitte mindestenst 1 mal mit diesem Wert durchlaufen lassen danach 1 mal mit 10 dies sollte beide Varianten zeigen
    $iTime=TimerInit()
    $sURL = "www.autoit.de"
    _IENavigate($oIE, $sURL, 0)
    If $oIE.readyState <> "Vor While...Wend: complete" and $oIE.readyState <> 4 Then
    ConsoleWrite("Nicht geladen" & @CRLF)
    Else
    ConsoleWrite("Vor While...Wend: Seite komplett geladen" & @CRLF)
    EndIf

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

    While Not $bTimeOut And $oIE.readyState <> 4
    Sleep(1000)
    WEnd

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

    If $oIE.readyState <> "Nach While...Wend: complete" and $oIE.readyState <> 4 Then
    ConsoleWrite("Nicht geladen" & @CRLF)
    Else
    ConsoleWrite("Nach While...Wend: Seite komplett geladen" & @CRLF)
    EndIf
    If $bTimeOut Then
    ConsoleWrite(@CRLF&@CRLF&'Seite: ' & $sURL&' nicht in '&$iTime &' ms geladen!'&@CRLF)
    Else
    ConsoleWrite(@CRLF&@CRLF&'Seite: ' & $sURL&' in '&$iTime &' ms geladen!'&@CRLF)
    EndIf;_IEQuit($oIE)
    ;_IEQuit($oIE)
    Exit

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

    Func IEEvent_NavigateError($pdisp, $url, $tf, $status, $cancel)
    $msg = "Problems loading page: " & $url & @CRLF
    $msg = $msg & "Status: " & $status & @CRLF
    MsgBox(0, "PROBLEMS", $msg)
    EndFunc ;==>IEEvent_NavigateError

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

    Func IEEvent_ProgressChange($Progress, $ProgressMax)
    Local $iDiff=TimerDiff($iTime)
    ;ConsoleWrite($Progress & '/' & $ProgressMax &@TAB& $oIE.readyState & ' bisher: ' &$iDiff & @CRLF)
    If TimerDiff($iTime) > $iTimeOut Then
    If $oIE.readyState <> 4 Then $bTimeOut = True
    $iTime=TimerDiff($iTime)
    ;_IEAction($oIE,"stop")
    ;Exit
    EndIf
    EndFunc ;==>IEEvent_ProgressChange

    [/autoit]

    nach dem 1. Durchlauf änderst du $iTimeOut auf einen extrem kleinen Wert. Speichere dir beidesmal die Consolenausgaben in ein Textfile, falls du weitere Nachfragen hast möchte ich sie sehen.

    mfg autoBert

  • Wechsel zwischen Hover- und Klick-Funktion

    • autoBert
    • 6. April 2013 um 13:47

    Auch auf die Gefahr hin, dass du auf der Mitleidsmasche reist:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include "GUICtrl_SetOnHover\GUICtrlOnHover.au3"
    Opt("GUIOnEventMode", 1)
    Global $hWnd = "[CLASS:Chrome_WidgetWin_1]" ;MozillaWindowClass

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

    $Form1 = GUICreate("Game Keyboard", 213, 129, -1, -1, -1, $WS_EX_TOPMOST)
    $Button1 = GUICtrlCreateButton("Space", 8, 72, 91, 25)
    ;GUICtrlSetOnEvent(-1, "_Space")
    $Button2 = GUICtrlCreateButton("U", 40, 10, 27, 25)
    _GUICtrl_OnHoverRegister(-1, "_Hover_Func", "_Hover_Func")
    GUICtrlSetOnEvent(-1, "_Click_Func2")
    $Button3 = GUICtrlCreateButton("D", 40, 40, 27, 25)
    _GUICtrl_OnHoverRegister(-1, "_Hover_Func", "_Hover_Func")
    $Button4 = GUICtrlCreateButton("L", 8, 40, 27, 25)
    _GUICtrl_OnHoverRegister(-1, "_Hover_Func", "_Hover_Func")
    $Button5 = GUICtrlCreateButton("R", 73, 40, 27, 25)
    _GUICtrl_OnHoverRegister(-1, "_Hover_Func", "_Hover_Func")
    $Checkbox1 = GUICtrlCreateCheckbox("&Hover active", 112, 48, 81, 17)
    GUICtrlSetState($Checkbox1, $GUI_CHECKED)
    GUICtrlSetOnEvent(-1, '_CheckIt')
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    GUISetOnEvent($GUI_EVENT_CLOSE, "hGUIClose")
    While 1
    Sleep(1000)
    WEnd
    Func _CheckIt()
    If BitAND(GUICtrlRead($Checkbox1), $GUI_CHECKED) Then
    _GUICtrl_OnHoverRegister($Button2, "_Hover_Func", "_Hover_Func")
    _GUICtrl_OnHoverRegister($Button3, "_Hover_Func", "_Hover_Func")
    _GUICtrl_OnHoverRegister($Button4, "_Hover_Func", "_Hover_Func")
    _GUICtrl_OnHoverRegister($Button5, "_Hover_Func", "_Hover_Func")
    GUICtrlSetOnEvent($Button2, "")
    GUICtrlSetOnEvent($Button3, "")
    GUICtrlSetOnEvent($Button4, "")
    GUICtrlSetOnEvent($Button5, "")
    Else
    _GUICtrl_OnHoverRegister($Button2, "", "")
    _GUICtrl_OnHoverRegister($Button3, "", "")
    _GUICtrl_OnHoverRegister($Button4, "", "")
    _GUICtrl_OnHoverRegister($Button5, "", "")
    GUICtrlSetOnEvent($Button2, "_Click_Func3")
    GUICtrlSetOnEvent($Button3, "_Click_Func3")
    GUICtrlSetOnEvent($Button4, "_Click_Func4")
    GUICtrlSetOnEvent($Button5, "_Click_Func5")
    EndIf
    EndFunc ;==>_CheckIt

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

    Func _Hover_Func($iCtrlID, $iParam)
    Local $sButton2_Action = "{UP DOWN}"
    Local $sButton3_Action = "{DOWN DOWN}"
    Local $sButton4_Action = "{LEFT DOWN}"
    Local $sButton5_Action = "{RIGHT DOWN}"

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

    If $iParam = 2 Then ;Indicates On *Leave* Hover process
    $sButton2_Action = "{UP UP}"
    $sButton3_Action = "{DOWN UP}"
    $sButton4_Action = "{LEFT UP}"
    $sButton5_Action = "{RIGHT UP}"
    EndIf

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

    Switch $iCtrlID
    Case $Button2
    ConsoleWrite($sButton2_Action & @CRLF)
    Case $Button3
    ConsoleWrite($sButton3_Action & @CRLF)
    Case $Button4
    ConsoleWrite($sButton4_Action & @CRLF)
    Case $Button5
    ConsoleWrite($sButton5_Action & @CRLF)
    EndSwitch

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

    EndFunc ;==>_Hover_Func

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

    Func _Click_Func2()
    MsgBox(0, 'Clickfunc', '2', 4, $Form1)
    EndFunc ;==>_Click_Func3

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

    Func _Click_Func3()
    MsgBox(0, 'Clickfunc', '3', 4, $Form1)
    EndFunc ;==>_Click_Func3

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

    Func _Click_Func4()
    MsgBox(0, 'Clickfunc', '4', 4, $Form1)
    EndFunc ;==>_Click_Func4

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

    Func _Click_Func5()
    MsgBox(0, 'Clickfunc', '5', 4, $Form1)
    EndFunc ;==>_Click_Func5

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

    Func hGUIClose()
    Exit
    EndFunc ;==>hGUIClose

    [/autoit]

    Ich habe das Skript so abgeändert das man das Schema erkennt. Die Spacetaste habe ich komplett ignoriert.

    mfg autoBert

  • IE Fenster "Seiten Ladestatus" abfragen

    • autoBert
    • 6. April 2013 um 10:14

    Kann dein Problem bestätigen, ich bekomme immer "Seite komplett geladen". Ist aber auch logisch da der Readystate 4 für komplett geladen steht, deine If Bedinung muss also so aussehen:

    [autoit]

    If Not $oIE.readyState = "complete" and Not $oIE.readyState = 4 Then
    ConsoleWrite("Nicht geladen" & @CRLF)
    Else
    ConsoleWrite("Seite komplett geladen" & @CRLF)
    EndIf
    _IEQuit($oIE)
    Exit

    [/autoit]

    mfg autoBert

  • Wechsel zwischen Hover- und Klick-Funktion

    • autoBert
    • 6. April 2013 um 03:28
    Zitat von btcode

    Wie leite ich den Befehl aus der Hover-Funktion an ein anderes Fenster weiter? Mit der UDF geht's so.

    Wenn du schon weist das es geht dann mach es so wie in dem hier nicht vorliegenden Beispiel wo es geht.

    Zitat von btcode

    Es soll eine Art virtuelles "Game Keyboard" werden


    Du solltest dir die Forenregeln durchlesen. Spielebots werden hier nicht unterstützt und ich konnte keinerlei Anzeichen dafür finden dass es die Steuerung für dein Spieleskript ist.

    Daher: Vote for Close

    mfg autoBert

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™