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

Beiträge von oetzn

  • Frage und Antwort > Script

    • oetzn
    • 12. Mai 2011 um 19:32

    Mit einer IF-Abfrage klären was der User in die Inputbox geschrieben hat.

  • TCP - Client <--> Server / Wie erhält der Client eine Antwort vom Server, wenn er etwas gesendet hat?

    • oetzn
    • 19. April 2011 um 15:56

    Wenn du mit TCPAccept eine Verbindung aufgenommen hast, kriegst du ein Handle zurück.
    Dieses Handle musst du dann für TCPSend oder TCPRecv verwenden.
    In deinem Fall ist das Problem, dass er nicht wartet, sondern sofort schaut ob eine Antwort da ist oder nicht. (wenn man den PHP code als AutoIt interpertieren würde)

    Du musst eine Schleife einbauen, die sich so lange wiederholt bis auch etwas ankommt ;)
    Also in etwa so:

    [autoit]


    Do
    $temp = TCPRecv($socket,1028)
    Sleep(10)
    Until $temp <> ""
    MsgBox(0,"",$temp)

    [/autoit]
  • 2 Monitore - Vollbildanwendung (Spiel) auf erstem - auf zweitem Monitor weiterarbeiten

    • oetzn
    • 3. Dezember 2010 um 07:46

    Kann ich bei mir nicht machen, ich hab durch das Programm UltraMon 2 Taskleisten, ist ganz praktisch =D
    Aber das mit dem Fenstermodus werd i mir mal anschauen, vl ein kleines Skript, dass CSS in der gwählten Auflösung startet und gleichzeitig WinSetOnTop anwendet..

  • 2 Monitore - Vollbildanwendung (Spiel) auf erstem - auf zweitem Monitor weiterarbeiten

    • oetzn
    • 2. Dezember 2010 um 09:35

    Ich denke ich werd das mit Winmove machen =D
    Beim Fenstermodus hab ich nur leider das Problem, dass beim raustabben mit ALT + TAB immer die Taskleiste in den Vordergrund kommt und manchmal beim reintabben wieder weg geht und manchmal eben nicht.
    Kanns grad nicht ausprobieren, aber lässt sich das mit WinSetOnTop lösen? Oder ist hier die Taskleiste stärker?

  • 2 Monitore - Vollbildanwendung (Spiel) auf erstem - auf zweitem Monitor weiterarbeiten

    • oetzn
    • 29. November 2010 um 08:24

    Gut, ich werde probieren sobald ich kann :D
    Sitze im Moment an meinem Laptop in der Schule, mein StandPC ist aber zuhause xD
    Danke für die Hilfe, mal sehen ob das meinen Erwartungen gerecht wird ^^

  • 2 Monitore - Vollbildanwendung (Spiel) auf erstem - auf zweitem Monitor weiterarbeiten

    • oetzn
    • 29. November 2010 um 08:15

    Hmm danke, das hilft schon mal :D
    Müsste man nur noch rausfinden, wie WoW das genau macht, dann könnte man vl ähnliche Attribute auf andere Anwendungen anwenden ;)

  • 2 Monitore - Vollbildanwendung (Spiel) auf erstem - auf zweitem Monitor weiterarbeiten

    • oetzn
    • 29. November 2010 um 08:08

    Guten Morgen ! :)

    Hab mich schon im Internet rumgelesen (Google), ob es eine Möglichkeit gibt, wie man auf dem zweiten Bildschirm weiterarbeiten kann, obwohl auf dem ersten eine Vollbildanwendung läuft, zb ein Spiel. (Es handelt sich vorwiegend um Counter-Strike:Source !)
    Ziel ist es, dass ich zB eine Hotkey drücke und anschließend mit der Maus und Tastertur auf dem zweiten Bildschirm agieren kann, ohne, dass sich das Spiel auf dem ersten Bildschirm minimiert.
    In den meisten Foren findet man nur Antworten wie: Geht nicht! etc
    In einem habe ich ein AutoHotKey-Skript gesehen, dass zwar nicht diesen Job erledigt, aber auch etwas in diese Richtung. Dort wurde bestimmte Attribute auf das betroffene Fenster angewendet.

    Hat jemand von euch vielleicht einen spontanen Einfall zu dem Thema?
    Ich wäre dem/der sehr dankbar :D

    Nochwas, Fenstermodus kommt eigentlich nicht in Frage, da es einfach nicht das selbe ist im Fenstermodus zu spielen :D

    MfG oetzn

  • Listview, Index von Item wird nicht korrekt erkannt !

    • oetzn
    • 19. September 2010 um 20:22

    Ok danke !

  • Listview, Index von Item wird nicht korrekt erkannt !

    • oetzn
    • 19. September 2010 um 18:18

    OK, es fügt schon mal nichts mehr doppelt ein, aber wenn ich es so verwende:

    [autoit]


    Func _SetFilter()
    Local $sExt = InputBox("Dateiliste filtern", "Bitte geben Sie hier die Dateierweiterung ein, nach der die Liste gefiltert werden soll!" & @CRLF & "BSP: 'mp3'" & @CRLF & @CRLF & "Nach dem Filtern werden nur noch die Dateien mit der eingegebenen Endung angezeigt!")
    If @error Then Return -1
    Local $iCount = _GUICtrlListView_GetItemCount($hListViewFilesAdded) -1

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

    For $i = 0 To $iCount
    If StringRegExp(_GUICtrlListView_GetItemText($hListViewFilesAdded,$i),$sExt,0) Then
    _GUICtrlListView_AddItem($hListViewFilesEdit, _GUICtrlListView_GetItemText($hListViewFilesAdded,$i))
    _GUICtrlListView_DeleteItem($hListViewFilesAdded,$i)
    EndIf
    Next
    EndFunc ;==>_SetFilter

    [/autoit]

    Sollte es eigentlich das tun, was es tun soll, tut es aber nicht.
    Es soll alle Dateien die mit dem Filter übereinstimmen, aus der 1. gelöscht und in die 2. eingefügt werden !

    Mit der Funktion oben, nimmt er immer nur jede 2. Datei, aber ich weis nicht warum..

  • Listview, Index von Item wird nicht korrekt erkannt !

    • oetzn
    • 19. September 2010 um 17:39

    Wieso?
    Die brauchst du nicht, kannst aus den includes löschen..

    €: Hab ich mal für dich gemacht !

  • Listview, Index von Item wird nicht korrekt erkannt !

    • oetzn
    • 19. September 2010 um 17:22

    Hallo Leute,

    Ich nutze selten die Hilfe & Unterstützung Sektion im Forum für mich aber irgendwann muss es halt auch mal sein :D

    Das ist das Skript:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <StaticConstants.au3>
    #include <TabConstants.au3>
    #include <WindowsConstants.au3>
    #include <GuiListView.au3>
    #include <File.au3>
    #include <WinAPI.au3>

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

    #NoTrayIcon

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

    #AutoIt3Wrapper_UseX64=n

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

    Opt("GuiOnEventMode", 1)
    Opt("GuiCloseOnESC", 0)

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

    ; ### MAIN GUI ###

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

    $hGuiMain = GUICreate("Multiple-File-Editor", 641, 440)
    $Group1 = GUICtrlCreateGroup(" Dateien ", 8, 8, 289, 425)
    $cButtonAddFiles = GUICtrlCreateButton("Dateien hinzufügen", 16, 24, 107, 25, $WS_GROUP)
    $cButtonAddFolder = GUICtrlCreateButton("Ordner hinzufügen", 128, 24, 99, 25, $WS_GROUP)
    $cListViewFilesAdded = GUICtrlCreateListView("Dateien", 16, 56, 273, 169)
    $cButtonFilter = GUICtrlCreateButton("Filter", 232, 24, 57, 25, $WS_GROUP)
    $cListViewFilesEdit = GUICtrlCreateListView("Dateien", 16, 256, 273, 169)
    $cCheckboxAllFiles = GUICtrlCreateCheckbox("Alle Dateien", 16, 232, 97, 17, BitOR($BS_CHECKBOX, $BS_AUTOCHECKBOX, $BS_RIGHTBUTTON, $BS_CENTER, $WS_TABSTOP))
    $cButtonDown = GUICtrlCreateButton("DOWN", 136, 232, 75, 17, $WS_GROUP)
    $cButtonUp = GUICtrlCreateButton("UP", 216, 232, 75, 17, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $cTab = GUICtrlCreateTab(304, 48, 329, 297)
    GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
    $TabSheet1 = GUICtrlCreateTabItem("Dateiname")
    $Group4 = GUICtrlCreateGroup(" Schriftzug ", 312, 200, 313, 89)
    $cRadioNoAction = GUICtrlCreateRadio("Unverändert lassen", 320, 264, 137, 17)
    $cRadioNormalCase = GUICtrlCreateRadio("Anfangsbuchstaben groß", 320, 248, 137, 17)
    $cRadioLowerCase = GUICtrlCreateRadio("Alles klein schreiben", 320, 232, 113, 17)
    $cRadioUpperCase = GUICtrlCreateRadio("Alles groß schreiben", 320, 216, 113, 17)
    $cButtonApplyFormatFilenames = GUICtrlCreateButton("Übernehmen", 496, 256, 125, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group5 = GUICtrlCreateGroup(" Löschen ", 312, 152, 313, 49)
    $cRadioDeleteAfter = GUICtrlCreateRadio("Hinten", 476, 179, 50, 17)
    $cRadioDeleteBefore = GUICtrlCreateRadio("Vorne", 476, 163, 50, 17)
    $cInputDeleteChars = GUICtrlCreateInput("", 316, 169, 153, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cButtonApplyDeleteChars = GUICtrlCreateButton("Übernehmen", 536, 168, 83, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group6 = GUICtrlCreateGroup(" Einfügen ", 312, 72, 313, 81)
    $cInputInsertText = GUICtrlCreateInput("", 324, 87, 161, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cRadioInsertAfter = GUICtrlCreateRadio("Nach dem Dateinamen", 492, 97, 130, 17)
    $cRadioInsertBefore = GUICtrlCreateRadio("Vor dem Dateinamen", 492, 81, 121, 17)
    $cButtonApplyInsertText = GUICtrlCreateButton("Übernehmen", 496, 120, 125, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group7 = GUICtrlCreateGroup(" Ersetzen ", 312, 288, 313, 49)
    $cInputReplace1 = GUICtrlCreateInput("", 320, 304, 57, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $Label1 = GUICtrlCreateLabel(" ersetzen mit ", 384, 306, 66, 17)
    $cInputReplace2 = GUICtrlCreateInput("", 456, 304, 57, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cButtonReplace = GUICtrlCreateButton("Ersetzen", 520, 304, 99, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $TabSheet2 = GUICtrlCreateTabItem("MP3-Dateien (Tags etc)")
    $Group2 = GUICtrlCreateGroup(" Gloable Tags setzen ", 312, 72, 137, 177)
    $cInputArtist = GUICtrlCreateInput("", 320, 96, 121, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cInputYear = GUICtrlCreateInput("", 320, 144, 121, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cInputAlbum = GUICtrlCreateInput("", 320, 120, 121, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cInputGenre = GUICtrlCreateInput("", 320, 168, 121, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cButtonApply2 = GUICtrlCreateButton("Übernehmen", 320, 216, 123, 25, $WS_GROUP)
    $cCheckboxDeleteOthers = GUICtrlCreateCheckbox("Andere Tags löschen", 322, 194, 121, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group3 = GUICtrlCreateGroup(" Tags aus Dateiname ", 456, 72, 169, 81)
    $cInputSyntax = GUICtrlCreateInput("", 464, 96, 153, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
    $cButtonApply3 = GUICtrlCreateButton("Übernehmen", 464, 120, 155, 25, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUICtrlCreateTabItem("")
    $cButtonHelp = GUICtrlCreateButton("Hilfe", 304, 16, 163, 25, $WS_GROUP)
    $cButtonExit = GUICtrlCreateButton("Beenden", 472, 16, 155, 25, $WS_GROUP)
    ; ### HELP GUI ###

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

    ; ### HELP GUI ###
    $hGuiHelp = GUICreate("Hilfe", 262, 224)
    GUICtrlCreateGroup(" Syntax ", 8, 8, 249, 177)
    $cLabelHelp1 = GUICtrlCreateLabel("Im Syntaxfeld kannst du angeben, wie die Dateinamen der MP3-Dateien aufgebaut sind. Das Programm verwendet diese Syntax dann um die korrekten ID3-Tags in die MP3-Dateien einzutragen.", 16, 24, 230, 65)
    $cLabelHelp2 = GUICtrlCreateLabel("Eine solche Syntax könnte wie folgt aussehen: %A% - %T% .%A% steht für den Interpreten (eng. Artist) und %T% steht für den Titel (eng. Title). Außerdem muss angegeben werden wie Interpret und Titel im Dateinamen von einander getrennt sind. Im Falle des Beispiels ist dies: ' - '", 16, 96, 230, 81)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $cButtonHelpExit = GUICtrlCreateButton("OK", 88, 192, 75, 25, $WS_GROUP)
    ; ### HELP GUI ###

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

    GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")

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

    $hListViewFilesAdded = GUICtrlGetHandle($cListViewFilesAdded)
    $hListViewFilesEdit = GUICtrlGetHandle($cListViewFilesEdit)

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

    _GUICtrlListView_SetColumnWidth($hListViewFilesAdded, 0, 1000)
    _GUICtrlListView_SetColumnWidth($hListViewFilesEdit, 0, 1000)

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

    GUISetOnEvent(-3, "_Exit", $hGuiMain)

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

    GUICtrlSetOnEvent($cButtonAddFiles, "_AddFiles")
    GUICtrlSetOnEvent($cButtonAddFolder, "_AddFolder")
    GUICtrlSetOnEvent($cButtonFilter, "_SetFilter")

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

    GUICtrlSetOnEvent($cButtonExit, "_Exit")

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

    GUICtrlSetState($cInputGenre, $GUI_DISABLE)
    GUICtrlSetState($cCheckboxDeleteOthers, $GUI_CHECKED + $GUI_DISABLE)
    ;~ GUICtrlSetState($cButtonDown, $GUI_DISABLE)
    ;~ GUICtrlSetState($cButtonUp, $GUI_DISABLE)
    ;~ GUICtrlSetState($cCheckboxAllFiles, $GUI_DISABLE)
    ;~ GUICtrlSetState($cListViewFilesEdit, $GUI_DISABLE)
    ;~ GUICtrlSetState($cInputReplace1, $GUI_DISABLE)
    ;~ GUICtrlSetState($cInputReplace2, $GUI_DISABLE)
    ;~ GUICtrlSetState($cButtonReplace, $GUI_DISABLE)

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

    GUICtrlSetResizing($cTab, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)

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

    HotKeySet("{DEL}", "_RemoveEntry")

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

    GUISetState(@SW_SHOW, $hGuiMain)
    GUISetState(@SW_HIDE, $hGuiHelp)

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

    While Sleep(10)
    WEnd

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

    Func _GetIndex($Info)
    MsgBox(0, 'Item Index Clicked',$Info)
    EndFunc

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

    Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR, $hWndListView
    $hWndListView = $hListViewFilesAdded ; Hier $hLV gegen das Handle des Listviews tauschen
    If Not IsHWnd($hListViewFilesAdded) Then $hWndListView = GUICtrlGetHandle($hListViewFilesAdded)

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

    $tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
    $hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
    $iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
    $iCode = DllStructGetData($tNMHDR, "Code")
    Switch $hWndFrom
    Case $hWndListView
    Switch $iCode
    Case $NM_DBLCLK ; Sent by a list-view control when the user double-clicks an item with the left mouse button
    Local $tInfo = DllStructCreate($tagNMITEMACTIVATE, $ilParam)
    _GetIndex(DllStructGetData($tInfo, "Index"))
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_NOTIFY

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

    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    Func _ToggleHelpGuiState()
    Switch _WinAPI_IsWindowVisible($hGuiHelp)
    Case True
    GUISetState(@SW_HIDE, $hGuiHelp)

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

    Case False
    GUISetState(@SW_SHOW, $hGuiHelp)
    EndSwitch
    EndFunc ;==>_ToggleHelpGuiState

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

    Func _AddFiles()
    Local $Files = FileOpenDialog("Bitte Dateien für die Bearbeitung auswählen", "", "Alle Dateien (*.*)", 7)
    If @error Then Return -1
    $aFiles = StringSplit($Files, "|", 3)
    If @error == 1 Then
    _GUICtrlListView_AddItem($hListViewFilesAdded, $Files)
    Else
    For $iIndex = 1 To UBound($aFiles, 1) - 1
    _GUICtrlListView_AddItem($hListViewFilesAdded, $aFiles[0] & '\' & $aFiles[$iIndex])
    Next
    EndIf
    EndFunc ;==>_AddFiles

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

    Func _AddFolder()
    Local $sFolder = FileSelectFolder("Bitte Ordner auswählen", "")
    If @error Then Return -1
    SplashTextOn("Bitte warten...", "Bitte warten Sie kurz!" & @CRLF & "Der Ordner wird rekursiv durchsucht, das kann je nach Größe des Ordners einige Zeit dauern!", 400, 80, -1, -1, -1, 6)
    Local $aFiles = _GetFilesFolder_Rekursiv($sFolder)
    SplashOff()
    If Not IsArray($aFiles) Then Return -2
    For $iIndex = 1 To $aFiles[0]
    If StringRegExp($aFiles[$iIndex], "\.[a-z0-9]{3,}$", 0) Then _GUICtrlListView_AddItem($hListViewFilesAdded, $aFiles[$iIndex])
    Next
    EndFunc ;==>_AddFolder

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

    Func _SetFilter()
    Local $sExt = InputBox("Dateiliste filtern", "Bitte geben Sie hier die Dateierweiterung ein, nach der die Liste gefiltert werden soll!" & @CRLF & "BSP: 'mp3'" & @CRLF & @CRLF & "Nach dem Filtern werden nur noch die Dateien mit der eingegebenen Endung angezeigt!")
    Local $sItem
    Local $iLength = StringLen($sExt)
    Local $iCount = _GUICtrlListView_GetItemCount($hListViewFilesAdded)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $iCount = ' & $iCount & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console

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

    If @error Or $sExt = '' Then Return -1
    For $i = 0 To $iCount - 1
    ;~ ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $iCount - 1 = ' & $iCount - 1 & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $i = ' & $i & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    $aItem = _GUICtrlListView_GetItemTextArray($hListViewFilesAdded, $i)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $aItem[1] = ' & $aItem[1] & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sExt = ' & $sExt & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : StringRight($sItem, $iLength) = ' & StringRight($sItem, $iLength) & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    If StringRight($aItem[1], $iLength) == $sExt Then
    _GUICtrlListView_AddItem($hListViewFilesEdit, $aItem[1])
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : _GUICtrlListView_AddItem($hListViewFilesEdit, $aItem[1]) = ' & _GUICtrlListView_AddItem($hListViewFilesEdit, $aItem[1]) & @crlf & '>Error code: ' & @error & @crlf) ;### Debug Console
    _GUICtrlListView_DeleteItem($hListViewFilesAdded, $i)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : _GUICtrlListView_DeleteItem($hListViewFilesAdded, $i) = ' & _GUICtrlListView_DeleteItem($hListViewFilesAdded, $i) & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    EndIf
    Next
    EndFunc ;==>_SetFilter

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

    ;==================================================================================================
    ; Function Name: _GetFilesFolder_Rekursiv($sPath [, $sExt='*' [, $iDir=-1 [, $iRetType=0 ,[$sDelim='0']]]])
    ; Description: Rekursive Auflistung von Dateien und/oder Ordnern
    ; Parameter(s): $sPath der Basispfad für die Auflistung ('.' -aktueller Pfad, '..' -Parentpfad)
    ; $sExt Erweiterung für Dateiauswahl '*' oder -1 für alle (Standard)
    ; $iDir -1 Dateien+Ordner(Standard), 0 nur Dateien, 1 nur Ordner
    ; optional: $iRetType 0 gibt Array, 1 gibt String zurück
    ; optional: $sDelim legt Trennzeichen für Stringrückgabe fest
    ; 0 -@CRLF (Standard) 1 -@CR 2 -@LF 3 -';' 4 -'|'
    ; Return Value(s): Array (Standard) od. String mit den gefundenen Pfaden der Dateien und/oder Ordner
    ; Array[0] enthält die Anzahl der gefundenen Dateien/Ordner
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;==================================================================================================
    Func _GetFilesFolder_Rekursiv($sPath, $sExt = '*', $iDir = -1, $iRetType = 0, $sDelim = '0')
    Global $oFSO = ObjCreate('Scripting.FileSystemObject')
    Global $strFiles = ''
    Switch $sDelim
    Case '1'
    $sDelim = @CR
    Case '2'
    $sDelim = @LF
    Case '3'
    $sDelim = ';'
    Case '4'
    $sDelim = '|'
    Case Else
    $sDelim = @CRLF
    EndSwitch
    If ($iRetType < 0) Or ($iRetType > 1) Then $iRetType = 0
    If $sExt = -1 Then $sExt = '*'
    If ($iDir < -1) Or ($iDir > 1) Then $iDir = -1
    _ShowSubFolders($oFSO.GetFolder($sPath), $sExt, $iDir, $sDelim)
    If $iRetType = 0 Then
    Local $aOut
    $aOut = StringSplit(StringTrimRight($strFiles, StringLen($sDelim)), $sDelim, 1)
    If $aOut[1] = '' Then
    ReDim $aOut[1]
    $aOut[0] = 0
    EndIf
    Return $aOut
    Else
    Return StringTrimRight($strFiles, StringLen($sDelim))
    EndIf
    EndFunc ;==>_GetFilesFolder_Rekursiv

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

    Func _ShowSubFolders($Folder, $Ext = '*', $Dir = -1, $Delim = @CRLF)
    If Not IsDeclared("strFiles") Then Global $strFiles = ''
    If ($Dir = -1) Or ($Dir = 0) Then
    For $file In $Folder.Files
    If $Ext <> '*' Then
    If StringRight($file.Name, StringLen($Ext)) = $Ext Then _
    $strFiles &= $file.Path & $Delim
    Else
    $strFiles &= $file.Path & $Delim
    EndIf
    Next
    EndIf
    For $Subfolder In $Folder.SubFolders
    If ($Dir = -1) Or ($Dir = 1) Then $strFiles &= $Subfolder.Path & '\' & $Delim
    _ShowSubFolders($Subfolder, $Ext, $Dir, $Delim)
    Next
    EndFunc ;==>_ShowSubFolders

    [/autoit]

    Und das ist das Problem:

    Wichtig: Bitte im Scite-Editor als x86-Skript ausführen !
    Wenn ihr auf Dateien hinzufügen klickt und anschließend Dateien auswählt, sie sollten die gleiche Endung haben und zur besseren Übersicht nummeriert sein, also zB 01_Datei.mp3, 02_Datei.mp3, ..

    Klickt ihr auf OK, so werden die Dateien in das erste Listview eingefügt, wenn ihr nun auf Filter klickt, erscheint eine Inputbox in der ihr die Endung eingebt, nach der die Dateien gefiltert werden sollen (zB mp3)
    Klickt ihr nun auf OK, sollten eigentlich alle Dateien mit der Endung vom oberen Listview ins untere verschoben werden (siehe Funktion _SetFilter).
    Wenn ihr aber genau schaut (Listviews und Ausgabe in Scite-Konsole), werden (zumindest bei mir) nicht alle Dateien verschoben und manche dafür doppelt erstellt, im unteren Listview.

    Die anderen Funktion hab ich mal weggelassen, da sie ja unwichtig sind :D

    Danke schon mal im vorraus.

    MfG oetzn

  • Memory.au3 KEIN BOT !!!!

    • oetzn
    • 3. September 2010 um 19:37

    Das hat was mit einer Lists zu tun, solange du nicht die Funktion "_SM_ControlClick" hast bringt dir das nichts denn das was du hier hast ist für dein Problem unbedeutend.

  • Objekt: SortedList

    • oetzn
    • 14. August 2010 um 11:04

    Gespeichert ;)

    Kann man sicher mal gebrauchen, danke =D

  • Kürzester Weg berechnen

    • oetzn
    • 12. August 2010 um 14:05

    Dazu gibts ein paar Threads hier, einfach mal die SuFu quälen.

    Der Link sollte auch helfen: http://de.wikipedia.org/wiki/Problem_des_Handlungsreisenden

  • Zeit zählen

    • oetzn
    • 12. August 2010 um 14:02

    Schau dir die Befehle an:

    [autoit]


    TimerInit
    TimerDiff

    [/autoit]

    EDIT: arghh, zu langsam -.-

  • .au3 in exe verwandeln ?

    • oetzn
    • 11. August 2010 um 18:58

    AutoIt v3 gibts schon ne halbe Ewigkeit, aber es gibt genau Versionsnummern. Die aktuelle ist 3.3.6.1 !

  • Ablaufende SLEEP Time in einem Tooltip anzeigen - Möglich ?

    • oetzn
    • 11. August 2010 um 18:52

    Klar. Du musst nur einen Timer nebenher laufen lassen. Ca so:

    [autoit]


    $Timer = TimerInit()
    $iSleepTime = 10000

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

    Do
    Sleep(10)
    TrayTip("RESTZEIT",Round($iSleepTime - TimerDiff($Timer),1),1)
    Until TimerDiff($Timer) > $iSleepTime

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

    EDIT: Verdammt viel zu langsam :D

  • Exe Bearbeiten Anfänger

    • oetzn
    • 11. August 2010 um 14:05

    Also erstmal Hallo =D

    Grundsätzlich erstmal hiflt dir die Hilfe von AutoIt fast immer gut weiter ;) Hier im Forum auf der linken Seite kannst du dir sie in deutscher Sprache runterladen.
    Weiters musst du eine Gui nicht in eine Funktion packen, das geht auch außerhalb und außerdem verwendet man eigentlich zuerst den Befehl

    [autoit]

    GuiCreate

    [/autoit]

    bevor man alle Elemente (Controls) in der Gui erstellt.

    Auch die Forumsuche zu quälen ist oft hilfreich ;)

    ProcessExists kannst du in der Hilfe nachschlagen (geht auch hier im Forum einfach draufklicken ;)

    Noch ne Frage, wofür brauchst du das ganze denn?

  • DarkMusikPlay UPDATE

    • oetzn
    • 7. August 2010 um 17:02

    In der Hilfe ?!

    Falls dus noch nicht weist: Mit GuiCtrlRead kann man den Wert eines Controls auslesen, was man zurückbekommt ist von Control zu Control unterschiedlich, siehe Hilfe.

  • Browsergame + Forum

    • oetzn
    • 7. August 2010 um 16:35

    Den vollen Source? O_o
    Ich will nicht wissen wie du an den gekommen bist :D (Wenn du's mir doch sagen willst -> PN me xD)

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™