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

Beiträge von TheLuBu

  • Logdatei / Mehrere Variabeln in einer .txt

    • TheLuBu
    • 12. September 2012 um 17:17

    Um welche Seite geht es denn?
    Hab schon eine Idee, wüsste aber zuerst gerne, um welche Seite es geht

  • Sieb des Eratosthenes

    • TheLuBu
    • 4. September 2012 um 14:54

    Durch die Vorgabe der Aufgabe ist das Auslassen von geraden Zahlen nicht erlaubt

    Zitat

    That means especially that you shouldn't optimize by using pre-computed wheels, i.e. don't assume you need only to cross out odd numbers (wheel based on 2), numbers equal to 1 or 5 modulo 6 (wheel based on 2 and 3), or similar wheels based on low primes.

    Ich werde auch noch ein bisschen weiter testen, danke schonmal für die Anregungen

  • Sieb des Eratosthenes

    • TheLuBu
    • 4. September 2012 um 13:15

    Hallo liebe Community,
    Ich habe mich ein bisschen durch http://rosettacode.org gewühlt und bin auf das Sieb des Eratosthenes gestoßen.

    Ich habe mir meine Gedanken dazu gemacht und den folgenden Code auch schon eingefügt:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    $Input = InputBox("Integer", "Enter biggest Integer")
    $timer = TimerInit()
    Global $array[$Input][2], $retarray[1], $counter = 0, $txt = ""
    For $i = 2 To UBound($array)
    $array[$i - 1][0] = $i
    $array[$i - 1][1] = -1
    Next
    For $i = 1 To UBound($array) - 1
    If $array[$i][1] = -1 Then
    $array[$i][1] = 1
    _ArrayAdd($retarray, $array[$i][0])
    $counter += 1
    For $k = $i To UBound($array) - 1 Step $array[$i][0]
    $array[$k][1] = 0
    Next
    EndIf
    Next
    $retarray[0] = $counter
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : TimerDiff($Timer) = ' & TimerDiff($Timer) & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console
    _ArrayDisplay($retarray)

    [/autoit]

    Ich würde jetzt gerne von euch wissen, ob man das noch irgendwie schneller machen könnte.
    Ich würde gerne das Ausgabeformat (Array mit den Primzahlen und Anzahl der Primzahlen in $array[0]) beibehalten, ich weiß das es mit einem String schneller gehen würde (ohne das _ArrayAdd). Ich komme jetzt bei Input = 1000 auf ~ 25ms, würde aber gerne wissen, ob es noch schneller geht :)

  • Hilfe bei 3er Liste

    • TheLuBu
    • 3. September 2012 um 14:29
    Spoiler anzeigen
    [autoit]

    #include <array.au3>

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

    Global $a_VideoPortals[5][2] = [ _
    ["Name","URL"], _
    ["Youtube","www.youtube.com"], _
    ["Vimeo","www.vimeo.com"], _
    ["Clipfish","www.clipfish.de"], _
    ["MyVideo","www.myvideo.de"] _
    ]

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

    Global $a_SearchMachines[5][2] = [ _
    ["Name","URL"], _
    ["Google","www.google.de"], _
    ["Lycos","www.lycos.de"], _
    ["Yahoo","www.yahoo.de"], _
    ["Alta Vista","www.altavista.com"] _
    ]

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

    ;########################################
    Global $a_List3text[5][2] = [ _
    ["Name","Description"], _
    ["Google","Text über Google"], _
    ["Lycos","Text über Lycos"], _
    ["Yahoo","Text über Yahoo"], _
    ["Alta Vista","Text über Alta Vista"] _
    ]
    ;########################################

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

    Global $a_Find

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

    $h_Gui = GUICreate ("", 550, 250)
    $h_List1 = GUICtrlCreateList ("", 10, 10, 160, 160)
    $h_List2 = GUICtrlCreateList ("", 180, 10, 160, 160)
    $h_List3 = GUICtrlCreateList ("", 350, 10, 160, 160)

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

    $h_Go = GUICtrlCreateButton("Go", 10, 200, 50, 26)

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

    GUICtrlSetData ($h_List1, "Die Besten Videoportale|Die Besten Suchmaschinen")

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

    GUISetState (@SW_SHOW, $h_Gui)

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

    While True
    Switch GUIGetMsg ()
    Case -3
    Exit
    Case $h_List1
    $s_Read = GUICtrlRead ($h_List1)
    Switch $s_Read
    Case "Die Besten Videoportale"
    $a_Find = $a_VideoPortals
    Case "Die Besten Suchmaschinen"
    $a_Find = $a_SearchMachines
    Case Else
    $a_Find = -1
    EndSwitch
    if $a_Find <> -1 Then
    $newString=""
    GUICtrlSetData ($h_List2, $newString)
    For $i = 1 To UBound ($a_Find) - 1
    $newString &= $a_Find[$i][0] & "|"
    Next
    GUICtrlSetData ($h_List2, StringTrimRight($newString,1))
    EndIf
    ;################################################################
    Case $h_List2
    $s_Read = GUICtrlRead ($h_List2)
    For $i = 1 To UBound($a_List3text) -1
    If $s_Read = $a_List3text[$i][0] Then
    GUICtrlSetData ($h_List3, "")
    GUICtrlSetData($h_List3, $a_List3text[$i][1])
    ExitLoop
    EndIf
    Next
    ;################################################################
    Case $h_Go
    $s_Read = GUICtrlRead ($h_List1)
    Switch $s_Read
    Case "Die Besten Videoportale"
    $a_Find = $a_VideoPortals
    Case "Die Besten Suchmaschinen"
    $a_Find = $a_SearchMachines
    Case Else
    $a_Find = -1
    EndSwitch
    if $a_Find <> -1 Then
    $s_Read = GUICtrlRead ($h_List2)
    For $i = 1 To UBound ($a_Find) - 1
    If $s_Read = $a_Find[$i][0] Then
    ShellExecute ($a_Find[$i][1])
    ExitLoop
    EndIf
    Next
    EndIf
    EndSwitch
    WEnd

    [/autoit]

    Das mit ###### eingefasste ist, was ich geschrieben habe.

  • Func mit If Abfrage

    • TheLuBu
    • 3. September 2012 um 14:13

    Das wird noch kompliziert mit dir... ;)

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

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

    #region ### START Koda GUI section ### Form=
    $Form1 = GUICreate("Form1", 633, 451, 193, 115)
    $Input1 = GUICtrlCreateInput("", 40, 32, 193, 21)
    $Input2 = GUICtrlCreateInput("", 40, 64, 193, 21)
    $Input3 = GUICtrlCreateInput("", 40, 88, 193, 21)
    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $nMsg = $Input1
    If GUICtrlRead($Input1) > 10 Then
    GUICtrlSetData($Input3, GUICtrlRead($Input1) * GUICtrlRead($Input2))
    Else
    GUICtrlSetData($Input3, GUICtrlRead($Input1) - 2)
    EndIf
    EndSwitch
    WEnd

    [/autoit]


    Hier nochmal als Beispiel.

    Wenn der Wert in $Input1 größer als 10 ist dann wird die erste Aufgabe gelöst,sonst die zweite Aufgabe

  • Hilfe bei 3er Liste

    • TheLuBu
    • 3. September 2012 um 14:01

    Oben deklarieren:

    [autoit]

    Global $a_List3text[5][2] = [ _
    ["Name","Description"], _
    ["Google","Text über Google"], _
    ["Lycos","Text über Lycos"], _
    ["Yahoo","Text über Yahoo"], _
    ["Alta Vista","Text über Alta Vista"] _
    ]

    [/autoit]

    Und das hier unten in den Switch packen ;)

    [autoit]

    Case $h_List2
    $s_Read = GUICtrlRead ($h_List2)
    For $i = 1 To UBound($a_List3text) -1
    If $s_Read = $a_List3text[$i][0] Then
    GUICtrlSetData ($h_List3, "")
    GUICtrlSetData($h_List3, $a_List3text[$i][1])
    ExitLoop
    EndIf
    Next

    [/autoit]
  • Func mit If Abfrage

    • TheLuBu
    • 3. September 2012 um 13:43

    Jeder Rechenschritt wird für sich abgearbeitet ;)

    [autoit]

    GUICtrlSetData($Input3, GUICtrlRead($Input1) * GUICtrlRead($Input2))

    [/autoit]


    Der Rechenschritt wird ausgerechnet und in das Inputfeld geschrieben

    [autoit]

    GUICtrlSetData($Input3, GUICtrlRead($Input1) -2)

    [/autoit]


    Rechenschritt wird ausgeführt und in das selbe Inputfeld geschrieben.

    Der 2te Rechenschritt überschreibt aber die Anzeige des ersten Rechenschritts.

    Dein Problem habe ich aber auch noch immer nicht verstanden.

  • Hilfe bei 3er Liste

    • TheLuBu
    • 3. September 2012 um 13:33

    Was für Infos willst du denn noch anzeigen?

  • Drucker über Flurplan installieren

    • TheLuBu
    • 29. August 2012 um 16:41

    Und entferne mal

    [autoit]

    Opt("GUIOnEventMode", 1)

    [/autoit]

    aus deinem Script

  • Drucker über Flurplan installieren

    • TheLuBu
    • 29. August 2012 um 16:06
    [autoit]

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    Run(@SystemDir&"\rundll32.exe C:\WINDOWS\system32\printui.dll,PrintUIEntry /in /n ""\\server\Canon iR400 EG")
    EndSwitch

    WEnd

    [/autoit]

    Probier es mal so

  • _FTP_GetFilesFolder_Rekursiv

    • TheLuBu
    • 29. August 2012 um 15:45
    _FTP_GetFilesFolder_Rekursiv
    [autoit]

    ; #FUNCTION#
    ;==================================================================================================
    ; Function Name: _FTP_GetFilesFolder_Rekursiv($oFTPConnect, $sFolder = "", $iDir = -1, $sExt = "*")
    ; Description: Rekursive Auflistung von Ordnern
    ; Parameter(s): $oFTPConnect FTP Connection, wie sie von _FTP_Connect() zurückgegeben wird
    ; $sFolder der Basispfad für die Auflistung ("" ist unterste Ebene)
    ; $iDir -1 Dateien+Ordner(Standard), 0 nur Dateien, 1 nur Ordner
    ; $sExt Erweiterung für Dateiauswahl "*" für alle (Standard)
    ; Return Value(s): Array mit den gefundenen Pfaden der Dateien und/oder Ordner
    ; Array[0] enthält die Anzahl der gefundenen Dateien/Ordner
    ; Author(s): TheLuBu ([email='LuBu@veytal.com'][/email])
    ; Modified.......:
    ; Remarks .......:
    ; Related .......: _FTPGetAllFolders
    ; Link ..........;
    ;
    ;==================================================================================================
    Func _FTP_GetFilesFolder_Rekursiv($oFTPConnect, $sFolder = "", $iDir = -1, $sExt = "*")
    Local $retarray[16777216], $list, $counter = 1
    Global $__RemoteFolderListResult[1]
    __FTPGetAllFolders($sFolder)
    Switch $iDir
    Case -1, 0
    For $i = 1 To UBound($__RemoteFolderListResult) - 1
    _FTP_DirSetCurrent($oFTPConnect, $__RemoteFolderListResult[$i])
    If $iDir = -1 Then
    $retarray[$counter] = $__RemoteFolderListResult[$i]
    $counter += 1
    EndIf
    $list = _FTP_ListToArray($oFTPConnect, 2)
    For $k = 1 To $list[0]
    If $sExt <> '*' Then
    If StringRight($list[$k], StringLen($sExt)) = $sExt Then
    $retarray[$counter] = $__RemoteFolderListResult[$i] & "/" & $list[$k]
    $counter += 1
    EndIf
    Else
    $retarray[$counter] = $__RemoteFolderListResult[$i] & "/" & $list[$k]
    $counter += 1
    EndIf
    Next
    Next
    $retarray[0] = $counter
    ReDim $retarray[$counter + 1]
    Return $retarray
    Case 1
    $retarray = $__RemoteFolderListResult
    $__RemoteFolderListResult = ""
    Return $retarray
    EndSwitch
    EndFunc ;==>_FTP_GetFilesFolder_Rekursiv

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

    Func __FTPGetAllFolders($oFTPConnect, $sFolder = "")
    If Not IsDeclared("RemoteFolderListResult") Then Global $__RemoteFolderListResult[1]
    Local $Check
    If $sFolder = "" Then
    _FTP_DirSetCurrent($oFTPConnect, "/")
    Else
    _FTP_DirSetCurrent($oFTPConnect, $sFolder)
    EndIf
    $FTPFolderList = _FTP_ListToArray($oFTPConnect, 1)
    _ArrayAdd($__RemoteFolderListResult, _FTP_DirGetCurrent($oFTPConnect))
    If not IsArray($FTPFolderList) Or $FTPFolderList[0] = 0 Or ($FTPFolderList[0] = 2 AND $FTPFolderList[1] = "." AND $FTPFolderList[2] = "..") Then
    $Check = False
    While $Check = False
    $t = StringLeft(_FTP_DirGetCurrent($oFTPConnect), StringInStr(_FTP_DirGetCurrent($oFTPConnect), "/", 0, -1) - 1)
    _FTP_DirSetCurrent($oFTPConnect, $t)
    If $t = "" Then _FTP_DirSetCurrent($oFTPConnect,"/")
    $tmp_FTPFolderList = _FTP_ListToArray($oFTPConnect, 1)
    If @error Then $tmp_FTPFolderList = _FTP_ListToArray($oFTPConnect, 1)
    For $i = 1 To $tmp_FTPFolderList[0]
    If $tmp_FTPFolderList[$i] = "." or $tmp_FTPFolderList[$i] = ".." Then ContinueLoop
    If _ArraySearch($__RemoteFolderListResult, _FTP_DirGetCurrent($oFTPConnect) & "/" & $tmp_FTPFolderList[$i]) = -1 Then
    $Check = True
    ExitLoop
    EndIf
    Next
    WEnd
    Return 0
    EndIf
    For $Subfolder = 1 To $FTPFolderList[0]
    If $FTPFolderList[$Subfolder] = "." or $FTPFolderList[$Subfolder] = ".." Then ContinueLoop
    _FTPGetAllFolders(_FTP_DirGetCurrent($oFTPConnect) & "/" & $FTPFolderList[$Subfolder])
    Next
    EndFunc ;==>_FTPGetAllFolders

    [/autoit]

    Hier eine Funktion, die ich für einen anderen User geschrieben habe, vielleicht kann die ja jemand brauchen.
    Ihr könnt damit alle Dateien und/ oder Ordner auf einem Webspace anzeigen lassen.

    Feedback zu Bugs oder Änderungen ist erwünscht :)

  • Error: Subscript used with non-Array variable

    • TheLuBu
    • 29. August 2012 um 15:38
    Zitat von General Kaboom

    Ich nehme an...der Fehler tritt mit einem der Includes aus...er hat ja nur <200 Zeilen


    Beim zusammenschmeißen des QUellcodes werden Includes vorangestellt ;)
    Wenn du nur 50 Zeilen Code hast, aber 20 Includes, kann ein Fehler bei dir im Script stecken, die compilierte Nachricht zeigt aber eine Fehlerzeile > 50 an ;)

  • Error: Subscript used with non-Array variable

    • TheLuBu
    • 29. August 2012 um 15:36

    Hab dein Script mal compiliert und ausgeführt, erhalte ebenfalls den Fehler.
    Bei mir liegt es daran, das er

    [autoit]

    $ZielOrdner = IniRead($Ini,$i,"Pfad","")

    [/autoit]


    auslesen will, im Standardfall "D:\Sicherung\DBXXXX\"
    Ich habe keine Festplatte D:, aber das gibt noch nicht die Fehlermeldung, sondern erst

    [autoit]

    $fileList = _FileListToArray($ZielOrdner, $Type, 1)

    [/autoit]


    Da Die Festplatte bzw. der Ordner nicht existiert, gibt _FileListToArray 0 zurück, kein Array.
    Hier fragst du aber den Inhalt eines Elements aus $filelist ab

    [autoit]

    $Datex = FileGetTime($ZielOrdner & "\" & $fileList[$letzte_position], 1, 0)

    [/autoit]


    Bei mir Fehler im kompilierten zustand 4554 :)

    Hoffe ich konnte helfen

  • Mit TCP eine Datei auf FTP server hochladen/runterladen

    • TheLuBu
    • 29. August 2012 um 14:24
    Spoiler anzeigen
    [autoit]

    #include <FTPEx.au3>
    #include <Array.au3>
    $open = _FTP_Open("myftp")
    $server = ""
    $user = ""
    $pass = ""
    $FTPConnect = _FTP_Connect($open, $server, $user, $pass)
    $Return_folders = _FTP_GetFilesFolder_Rekursiv($FTPConnect, "", 1)
    _ArrayDisplay($Return_folders)
    _FTP_Close($open)

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

    ; #FUNCTION#
    ;==================================================================================================
    ; Function Name: _FTP_GetFilesFolder_Rekursiv($FTPConnect, $Folder = "", $iDir = -1, $sExt = "*")
    ; Description: Rekursive Auflistung von Ordnern
    ; Parameter(s): $FTPConnect FTP Connection, wie sie von _FTP_Connect() zurückgegeben wird
    ; $sPath der Basispfad für die Auflistung ("" ist unterste Ebene)
    ; $sExt Erweiterung für Dateiauswahl "*" für alle (Standard)
    ; $iDir -1 Dateien+Ordner(Standard), 0 nur Dateien, 1 nur Ordner
    ; Return Value(s): Array mit den gefundenen Pfaden der Dateien und/oder Ordner
    ; Array[0] enthält die Anzahl der gefundenen Dateien/Ordner
    ; Author(s): TheLuBu ([email='LuBu@veytal.com'][/email])
    ; Modified.......:
    ; Remarks .......:
    ; Related .......: _FTPGetAllFolders
    ; Link ..........;
    ;
    ;==================================================================================================
    Func _FTP_GetFilesFolder_Rekursiv($FTPConnect, $Folder = "", $iDir = -1, $sExt = "*")
    Local $retarray[16777216], $list, $counter = 1
    _FTPGetAllFolders($Folder)
    Switch $iDir
    Case -1, 0
    For $i = 1 To UBound($RemoteFolderListResult) - 1
    _FTP_DirSetCurrent($FTPConnect, $RemoteFolderListResult[$i])
    If $iDir = -1 Then
    $retarray[$counter] = $RemoteFolderListResult[$i]
    $counter += 1
    EndIf
    $list = _FTP_ListToArray($FTPConnect, 2)
    For $k = 1 To $list[0]
    If $sExt <> '*' Then
    If StringRight($list[$k], StringLen($sExt)) = $sExt Then
    $retarray[$counter] = $RemoteFolderListResult[$i] & "/" & $list[$k]
    $counter += 1
    EndIf
    Else
    $retarray[$counter] = $RemoteFolderListResult[$i] & "/" & $list[$k]
    $counter += 1
    EndIf
    Next
    Next
    $retarray[0] = $counter
    ReDim $retarray[$counter + 1]
    Return $retarray
    Case 1
    $retarray = $RemoteFolderListResult
    $RemoteFolderListResult = ""
    Return $retarray
    EndSwitch
    EndFunc ;==>_FTP_GetFilesFolder_Rekursiv

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

    Func _FTPGetAllFolders($Folder = "")
    If Not IsDeclared("RemoteFolderListResult") Then Global $RemoteFolderListResult[1]
    Local $Check
    If $Folder = "" Then
    _FTP_DirSetCurrent($FTPConnect, "/")
    Else
    _FTP_DirSetCurrent($FTPConnect, $Folder)
    EndIf
    $FTPFolderList = _FTP_ListToArray($FTPConnect, 1)
    _ArrayAdd($RemoteFolderListResult, _FTP_DirGetCurrent($FTPConnect))
    If not IsArray($FTPFolderList) Or $FTPFolderList[0] = 0 Or ($FTPFolderList[0] = 2 AND $FTPFolderList[1] = "." AND $FTPFolderList[2] = "..") Then
    $Check = False
    While $Check = False
    $t = StringLeft(_FTP_DirGetCurrent($FTPConnect), StringInStr(_FTP_DirGetCurrent($FTPConnect), "/", 0, -1) - 1)
    _FTP_DirSetCurrent($FTPConnect, $t)
    If $t = "" Then _FTP_DirSetCurrent($FTPConnect,"/")
    $tmp_FTPFolderList = _FTP_ListToArray($FTPConnect, 1)
    If @error Then $tmp_FTPFolderList = _FTP_ListToArray($FTPConnect, 1)
    For $i = 1 To $tmp_FTPFolderList[0]
    If $tmp_FTPFolderList[$i] = "." or $tmp_FTPFolderList[$i] = ".." Then ContinueLoop
    If _ArraySearch($RemoteFolderListResult, _FTP_DirGetCurrent($FTPConnect) & "/" & $tmp_FTPFolderList[$i]) = -1 Then
    $Check = True
    ExitLoop
    EndIf
    Next
    WEnd
    Return 0
    EndIf
    For $Subfolder = 1 To $FTPFolderList[0]
    If $FTPFolderList[$Subfolder] = "." or $FTPFolderList[$Subfolder] = ".." Then ContinueLoop
    _FTPGetAllFolders(_FTP_DirGetCurrent($FTPConnect) & "/" & $FTPFolderList[$Subfolder])
    Next
    EndFunc ;==>_FTPGetAllFolders

    [/autoit]
  • Mit TCP eine Datei auf FTP server hochladen/runterladen

    • TheLuBu
    • 29. August 2012 um 10:45
    Spoiler anzeigen
    [autoit]

    Func _FTPGetAllFolders($Folder = "")
    Local $Check
    If $Folder = "" Then
    _FTP_DirSetCurrent($FTPConnect, "/")
    Else
    _FTP_DirSetCurrent($FTPConnect, $Folder)
    EndIf
    $FTPFolderList = _FTP_ListToArray($FTPConnect, 1)
    _ArrayAdd($RemoteFolderListResult, _FTP_DirGetCurrent($FTPConnect))
    If $FTPFolderList = 0 Or $FTPFolderList[0] = 0 Then
    $Check = False
    While $Check = False
    _FTP_DirSetCurrent($FTPConnect, StringLeft(_FTP_DirGetCurrent($FTPConnect), StringInStr(_FTP_DirGetCurrent($FTPConnect), "/", 0, -1) - 1))
    $tmp_FTPFolderList = _FTP_ListToArray($FTPConnect, 1)
    For $i = 1 To $tmp_FTPFolderList[0]
    If _ArraySearch($RemoteFolderListResult, _FTP_DirGetCurrent($FTPConnect) & "/" & $tmp_FTPFolderList[$i]) = -1 Then
    $Check = True
    ExitLoop
    EndIf
    Next
    WEnd
    Return 0
    EndIf
    For $Subfolder = 1 To $FTPFolderList[0]
    _FTPGetAllFolders(_FTP_DirGetCurrent($FTPConnect) & "/" & $FTPFolderList[$Subfolder], 1)
    Next
    EndFunc ;==>_FTPGetAllFolders

    [/autoit]

    Musste die FUnktion etwas umschreiben, aber jetzt gehts ;)

  • Switch Liste erstellen

    • TheLuBu
    • 28. August 2012 um 16:55

    Jap, alles was du dafür brauchst steht schon im Code ;)

  • pdfsam-win.exe automatisieren

    • TheLuBu
    • 28. August 2012 um 16:35

    Setz mal zwischen die einzelnen Schritte einen Sleep von 250-500, sollte dann klappen, bei mir zumindest

  • Switch Liste erstellen

    • TheLuBu
    • 28. August 2012 um 16:31
    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>
    #Region ### START Koda GUI section ### Form=
    Global $Active
    $Form1 = GUICreate("Form1", 256, 344, 192, 124)
    $List1 = GUICtrlCreateList("", 48, 80, 161, 201)
    GUICtrlSetData(-1, "list 1")
    $List2 = GUICtrlCreateList("", 48, 80, 161, 201)
    GUICtrlSetData(-1, "list 2")
    GUICtrlSetState($List2, $GUI_HIDE)
    $Button1 = GUICtrlCreateButton("Switchlist", 48, 32, 153, 33)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    Switcher()
    EndSwitch
    WEnd

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

    Func Switcher()
    $Active = Not $Active
    If $Active Then
    GUICtrlSetState($List1, $GUI_HIDE)
    GUICtrlSetState($List2, $GUI_SHOW)
    Else
    GUICtrlSetState($List1, $GUI_SHOW)
    GUICtrlSetState($List2, $GUI_HIDE)
    EndIf
    EndFunc

    [/autoit]

    Mit Quellcode konnte ich dir helfen, vorher wars aber wirklich nicht einfach zu verstehen, was du möchtest

  • Arbeitszeit-Rechner

    • TheLuBu
    • 28. August 2012 um 16:28
    Spoiler anzeigen
    [autoit]

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

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

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    $Form1 = GUICreate("Gleitzeitrechner", 210, 250, 229, 124)
    ;Zeit Eingabe____________________________________________
    $Input1 = GUICtrlCreateInput("08.00", 16, 40, 177, 21)
    $Input2 = GUICtrlCreateInput("03.45", 16, 96, 177, 21)
    ;label____________________________________________________
    $Label1 = GUICtrlCreateLabel("Überstunden", 16, 72, 65, 17)
    $Label2 = GUICtrlCreateLabel("Arbeitsbeginn", 16, 16, 68, 17)
    ;Buttons___________________________________________________
    $Feierabend = GUICtrlCreateButton("Feierabend", 16, 136, 177, 65)
    $Beenden = GUICtrlCreateButton("Beenden", 16, 216, 177, 17)
    GUISetState(@SW_SHOW)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Beenden
    Exit
    Case $Feierabend
    $schluss = Guictrlread($Input1) + 7.44 - Guictrlread($Input2)
    Msgbox (1,"Arbeitsende",$schluss)

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

    EndSwitch
    WEnd

    [/autoit]

    Du musst die Zeit berechnen, wenn du auf den Button klickst nicht vorher ;)
    Weiterhin musst du Guictrlread benutzen, da $Input1 nur die COntrolID und nicht den Inhalt des Controls ausgibt

  • GUI Hilfe

    • TheLuBu
    • 28. August 2012 um 14:54
    Spoiler anzeigen
    [autoit]

    ;########INCLUDES GEHÖREN NACH OBEN##########
    #include <GUIConstants.au3>
    #include <misc.au3>

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

    Global $pause = False
    HotKeySet("{ESC}", "PAUSE")
    Global $iCount = 0
    Global $Buttoncheck = False
    Global $hDLL = DllOpen("user32.dll")
    GUICreate("Test", 200, 200, 50, 100)
    $label1 = GUICtrlCreateLabel("A", 80, 10, 150, 50)
    $Input1 = GUICtrlCreateInput("1000", 10, 10, 60, 20)
    $label2 = GUICtrlCreateLabel("B", 80, 50, 150, 100)
    $Input2 = GUICtrlCreateInput("1500", 10, 50, 60, 20)
    $label3 = GUICtrlCreateLabel("C", 80, 90, 150, 150)
    $Input3 = GUICtrlCreateInput("2000", 10, 90, 60, 20)
    $button1 = GUICtrlCreateButton("OK", 10, 150, 60, 20)
    GUISetState(@SW_SHOW)

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

    While 1
    Sleep(100)
    $Msg = GUIGetMsg()
    Switch $Msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $button1
    $Buttoncheck = True
    EndSwitch
    If $Buttoncheck = True Then
    If _IsPressed("01", $hDLL) Then ;ich
    $iCount += 1
    Do
    Sleep(100)
    Until Not _IsPressed("01", $hDLL)
    EndIf ;/ich
    If $iCount = 2 Then
    ;$iCount = 0
    Sleep(GUICtrlRead($Input1))
    MouseClick("left")
    Sleep(GUICtrlRead($Input2))
    MouseClick("left")
    Sleep(GUICtrlRead($Input3))
    MouseClick("left")
    $iCount = 0
    EndIf
    EndIf
    WEnd

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

    Func PAUSE()
    $pause = Not $pause
    While $pause
    Sleep(50)
    WEnd
    EndFunc ;==>PAUSE

    [/autoit]

    Meine Lösung, etwas anders als die von Hauke

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™