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

Beiträge von BugFix

  • Install-Script-Generator

    • BugFix
    • 24. März 2007 um 23:43
    Zitat

    frage mich bloss ob Autoit das richtige Install Tool ist.


    Sicher gibt es andere, bessere Tools dafür. Aber das ist ja nun mal der Reiz dabei, soviel wie möglich mit AutoIt zu realisieren. Nennen wir es sportlichen Ehrgeiz. ;)

    Hab die Funktion inzwischen noch etwas modifiziert, Statusbar und Log/Fehlercheck als Optionen.
    Änderungen im ersten Thread.

  • Zeichen aufteilen

    • BugFix
    • 24. März 2007 um 15:04

    Hier eine Variante, viel kürzer geht wohl nicht. :D

    [autoit]

    #include <array.au3>
    Dim $arOut[1]
    $arOut[0] = 0 ; nicht zwingend (für Anzahl Elemente)
    $var = "89432576"
    For $i = 1 To StringLen($var) Step 2
    _ArrayAdd($arOut, StringMid($var, $i, 2))
    $arOut[0] += 1 ; nicht zwingend (Anzahl Elemente)
    Next
    _ArrayDisplay($arOut, "2-er Gruppen")
    Exit

    [/autoit]

    EDIT
    Funktioniert mit geradzahligem und ungeradzahligem Ausgangsstring.

  • Kaspersky service größter müll?

    • BugFix
    • 24. März 2007 um 11:40

    Bin auch der Meinung, Antivirensoftware muß man nicht haben.
    Seit meine Lizenz vor 15 Monaten abgelaufen war, habe ich keine AV-Software mehr auf dem Rechner.
    Hab sporadisch mal ab und an 'nen Online-Check gemacht ==> immer clean.
    Wenn man nicht jeden blödsinnigen Link anklickt und vor allem nicht eMails von unbekanntem Absender öffnet, ist das schon die halbe Miete.

  • Bild von snoozer

    • BugFix
    • 21. März 2007 um 21:05

    Verwende doch GIMP. Das ist absolut free und hat fast identischen Funktionsumfang wie Photoshop. Kann auch fast alle mit Photoshop erstellten Dateien verarbeiten.

    Ähhh... :rolleyes: darauf hatte Mega auch grad verwiesen, da war ich etwas zu hastig :D

  • GUICtrlSetBkColor auf Zelle in ListView

    • BugFix
    • 21. März 2007 um 20:58

    Soweit ich das verstanden habe, geht es darum eine Zelle einzufärben.
    Das ist meines Wissens nicht möglich.
    Aber die Doppel-ListView-Variante von Tam0r stellt eine denkbare, wenn auch programmtechnisch nicht sehr angenehme Variante dar.

  • Durch Shortcuts eine Taste mit "Dauerfeuer" belegen

    • BugFix
    • 20. März 2007 um 19:10

    Versuchs mal so (ungetestet)
    <Alt> als Spacebar

    Spoiler anzeigen
    [autoit]

    #Include <Misc.au3>

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

    HotKeySet("^e","ende") ; Funktion mit STRG+e beenden
    _AltAsSpace(50) ; in msec.(50 = 20 x pro Sekunde)

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

    Func _AltAsSpace($intervall)
    While 1
    While _IsPressed("12")
    Send("{SPACE}")
    Sleep($intervall)
    WEnd
    WEnd
    EndFunc

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

    Func ende()
    Exit
    EndFunc

    [/autoit]
  • Fehlerberichterstattung (bitte helfen ^^)

    • BugFix
    • 20. März 2007 um 18:03
    Zitat

    Ich meine die ControlID soll doch eine Nummer sein odeR?


    Das stimmt schon. Genau diese (variierende) Zahl wird an die entsprechende Variable übergeben:
    $Raumwahl = GUICtrlCreateCombo ( "Raum auswählen...", 40, 40 , 115 , 30 )

    Kannst dir den Wert ja mal anschauen: MsgBox(0, "", "ID = " & $Raumwahl) ;)

  • Install-Script-Generator

    • BugFix
    • 20. März 2007 um 16:45

    Hi,
    ich hatte grade das Vergnügen über 30 Dateien mit FileInstall einzubinden. Da FileInstall für die Quelldatei keine Variablen oder Macros zuläßt, ist das eine sehr müßige Handarbeit.
    Bekanntlich ist Faulheit die größte Motivation - also habe ich mir ein Script erstellt, das die lästige Schreibarbeit übernimmt.

    Die Funktion wird aufgerufen mit den Parametern:
    - Quellpfad oder ~pfade getrennt durch "|"
    - Zielpfad
    - Name der zu erstellenden Datei

    Der oder die Pfade werden rekursiv ausgelesen. Die Pfadstruktur wird für das Installationsziel mit übernommen. - Hier kann es natürlich noch zu Diskrepanzen kommen wenn die Quellpfade stark von den Zielpfaden abweichen, aber das kann man dann zügig mit 'Suchen und Ersetzen' beheben.
    Im Installationsscript enthalten ist:
    - eine Fehlerüberprüfung für jede installierte Datei
    - alle Vorgänge werden mitgelogt
    - eine Progressbar für den Installationsfortschritt wird generiert

    EDIT
    - Log + Fehlercheck und
    - Progressbar
    jetzt optional

    EDIT2
    - Bug bei Verwendung von Macros gefixt

    Da hatte ich mir doch glatt was neues 'reingefixt' :rolleyes:
    OK, nun sollte es aber stimmen.

    EDIT3
    Nun noch der letzte Schliff:
    - Es wird jetzt auch die Verzeichnisstruktur für das Installationsziel automatisch erstellt.
    (Natürlich auch in derr GUI eingebunden)

    Hinweis: Das ganze jetzt auch in einer GUI zum editieren - siehe hier

    Spoiler anzeigen
    [autoit]

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Funktion _WriteInstall($SOURCEPATHES, $TARGET, $FILENAME[, $S_BAR=-1[, $LOG=-1]])
    ;
    ; Beschreibung Erzeugt eine Installationsdatei, mit FileInstall()-Routinen
    ; für alle Dateien des bzw. der Quellpfade, Optional Install-Log und
    ; Progressbar für Installationsfortschritt
    ;
    ; Parameter $SOURCEPATHES Pfad(e) des/der Quellordner getrennt mit "|"
    ; als String - keine Macros oder Variablen
    ; $TARGET Zielordner für Installation,
    ; Macros und Variablen können verwendet werden
    ; $FILENAME Name der zu erzeugenden Datei (z.B. 'setup.au3')
    ; als String - keine Macros oder Variablen
    ; $S_BAR Statusbar generieren (-1 JA, 0 NEIN) [Optional], Default -1
    ; $LOG Logdatei und Fehlercheck (-1 JA, 0 NEIN) [Optional], Default -1
    ;
    ; Autor BugFix ( [email='bugfix@autoit.de'][/email] )
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    #include <Array.au3>
    #include <file.au3>
    Func _WriteInstall($SOURCEPATHES, $TARGET, $FILENAME, $S_BAR=-1, $LOG=-1)
    Dim $QUELLPFADE, $aFILES[1], $FH = FileOpen($FILENAME,1), $PERCENT, $DIRECTORIES
    $aFILES[0] = 0
    If ($S_BAR = -1) And ($LOG = -1) Then
    FileWrite($FH, "#include <file.au3>" & @CRLF)
    FileWrite($FH, "Dim $fehler = 0" & @CRLF)
    FileWrite($FH, 'ProgressOn("Installation", "Installationsfortschritt", "")' & @CRLF)
    ElseIf $LOG = -1 Then
    FileWrite($FH, "#include <file.au3>" & @CRLF)
    ElseIf ($S_BAR = -1) And ($LOG <> -1) Then
    FileWrite($FH, 'ProgressOn("Installation", "Installationsfortschritt", "")' & @CRLF)
    EndIf
    If StringInStr($SOURCEPATHES, "|") Then $QUELLPFADE = StringSplit($SOURCEPATHES, "|")
    If IsArray($QUELLPFADE) Then
    For $i = 1 To $QUELLPFADE[0]
    $var = _GetFileList($QUELLPFADE[$i], "*.*")
    For $k = 1 To $var[0]
    _ArrayAdd($aFILES, $var[$k])
    $aFILES[0] += 1
    Next
    Next
    Else
    $var = _GetFileList($SOURCEPATHES, "*.*")
    If Not IsArray($var) Then
    MsgBox(16, 'Achtung', 'In ' & $SOURCEPATHES & ' sind keine Dateien vorhanden!')
    Return 0
    EndIf
    For $i = 1 To $var[0]
    _ArrayAdd($aFILES, $var[$i])
    $aFILES[0] += 1
    Next
    EndIf
    Select
    Case ($S_BAR = -1) And ($LOG = -1) ; mit Statusbar und Log/Fehlercheck
    For $i = 1 To $aFILES[0]
    $PERCENT = Round(100/$aFILES[0]*$i)
    $DIERECTORIES = StringTrimLeft(StringLeft($aFILES[$i], StringInStr($aFILES[$i],"\",0,-1)-1 ), 2 )
    If StringRight($TARGET, 1) = "\" Then $TARGET = StringTrimRight($TARGET, 1)
    FileWrite($FH, 'ProgressSet(' & $PERCENT & ', "' & StringRight($aFILES[$i], StringLen($aFILES[$i])- StringInStr($aFILES[$i], "\",0,-1)) & '")' & @CRLF)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, 'If Not FileExists(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'If DirCreate(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '\ = OK")' & @CRLF)
    FileWrite($FH, @TAB & 'Else' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '\ = Fehler")' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, @TAB & 'EndIf' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'If FileInstall("' & $aFILES[$i] & '", ' & $TARGET & ' & ' & '"' & StringTrimLeft($aFILES[$i],2) & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = OK")' & @CRLF)
    Else
    FileWrite($FH, 'If Not FileExists("' & $TARGET & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'If DirCreate("' & $TARGET & $DIERECTORIES & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog("' & $TARGET & $DIERECTORIES & '\ = OK")' & @CRLF)
    FileWrite($FH, @TAB & 'Else' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog("' & $TARGET & $DIERECTORIES & '\ = Fehler")' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, @TAB & 'EndIf' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'If FileInstall("' & $aFILES[$i] & '", "' & $TARGET & StringTrimLeft($aFILES[$i],2) & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & '_FileWriteLog("' & $TARGET & '\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = OK")' & @CRLF)
    EndIf
    FileWrite($FH, 'Else' & @CRLF)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = Fehler")' & @CRLF)
    Else
    FileWrite($FH, @TAB & '_FileWriteLog("' & $TARGET & '\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = Fehler")' & @CRLF)
    EndIf
    FileWrite($FH, @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    Next
    FileWrite($FH, 'If $fehler = 1 Then' & @CRLF)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, @TAB & 'ProgressSet( 100, "s. ' & $TARGET & ' & ' & '\Install.log", "Installation fehlerhaft!")' & @CRLF)
    Else
    FileWrite($FH, @TAB & 'ProgressSet( 100, "s. ' & $TARGET & '\Install.log", "Installation fehlerhaft!")' & @CRLF)
    EndIf
    FileWrite($FH, 'Else' & @CRLF)
    FileWrite($FH, @TAB & 'ProgressSet( 100, "Beendet", "Installation erfolgreich!")' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'Sleep(3000)' & @CRLF)
    FileWrite($FH, 'ProgressOff()' & @CRLF)
    Case ($S_BAR = -1) And ($LOG <> -1) ; mit Statusbar, ohne Log/Fehlercheck
    For $i = 1 To $aFILES[0]
    $PERCENT = Round(100/$aFILES[0]*$i)
    $DIERECTORIES = StringTrimLeft(StringLeft($aFILES[$i], StringInStr($aFILES[$i],"\",0,-1)-1 ), 2 )
    If StringRight($TARGET, 1) = "\" Then $TARGET = StringTrimRight($TARGET, 1)
    FileWrite($FH, 'ProgressSet(' & $PERCENT & ', "' & StringRight($aFILES[$i], StringLen($aFILES[$i])- StringInStr($aFILES[$i], "\",0,-1)) & '")' & @CRLF)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, 'If Not FileExists(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'DirCreate(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '")' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'FileInstall("' & $aFILES[$i] & '", ' & $TARGET & ' & ' & '"' & StringTrimLeft($aFILES[$i],2) & '")' & @CRLF)
    Else
    FileWrite($FH, 'If Not FileExists("' & $TARGET & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'DirCreate("' & $TARGET & $DIERECTORIES & '")' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'FileInstall("' & $aFILES[$i] & '", "' & $TARGET & StringTrimLeft($aFILES[$i],2) & '")' & @CRLF)
    EndIf
    Next
    FileWrite($FH, 'ProgressSet( 100, "", "Installation abgeschlossen!")' & @CRLF)
    FileWrite($FH, 'Sleep(3000)' & @CRLF)
    FileWrite($FH, 'ProgressOff()' & @CRLF)
    Case ($S_BAR <> -1) And ($LOG = -1) ; ohne Statusbar, mit Log/Fehlercheck
    For $i = 1 To $aFILES[0]
    $DIERECTORIES = StringTrimLeft(StringLeft($aFILES[$i], StringInStr($aFILES[$i],"\",0,-1)-1 ), 2 )
    If StringRight($TARGET, 1) = "\" Then $TARGET = StringTrimRight($TARGET, 1)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, 'If Not FileExists(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'If DirCreate(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '\ = OK")' & @CRLF)
    FileWrite($FH, @TAB & 'Else' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '\ = Fehler")' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, @TAB & 'EndIf' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'If FileInstall("' & $aFILES[$i] & '", ' & $TARGET & ' & ' & '"' & StringTrimLeft($aFILES[$i],2) & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = OK")' & @CRLF)
    Else
    FileWrite($FH, 'If Not FileExists("' & $TARGET & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'If DirCreate("' & $TARGET & $DIERECTORIES & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog("' & $TARGET & $DIERECTORIES & '\ = OK")' & @CRLF)
    FileWrite($FH, @TAB & 'Else' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '_FileWriteLog("' & $TARGET & $DIERECTORIES & '\ = Fehler")' & @CRLF)
    FileWrite($FH, @TAB & @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, @TAB & 'EndIf' & @CRLF)
    FileWrite($FH, 'If FileInstall("' & $aFILES[$i] & '", "' & $TARGET & StringTrimLeft($aFILES[$i],2) & '") = 1 Then' & @CRLF)
    FileWrite($FH, @TAB & '_FileWriteLog("' & $TARGET & '\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = OK")' & @CRLF)
    EndIf
    FileWrite($FH, 'Else' & @CRLF)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, @TAB & '_FileWriteLog(' & $TARGET & ' & ' & '"\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = Fehler")' & @CRLF)
    Else
    FileWrite($FH, @TAB & '_FileWriteLog("' & $TARGET & '\Install.log", "' & StringTrimLeft($aFILES[$i],2) & ' = Fehler")' & @CRLF)
    EndIf
    FileWrite($FH, @TAB & '$fehler = 1' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    Next
    Case ($S_BAR <> -1) And ($LOG <> -1) ; ohne Statusbar, ohne Log/Fehlercheck
    For $i = 1 To $aFILES[0]
    $DIERECTORIES = StringTrimLeft(StringLeft($aFILES[$i], StringInStr($aFILES[$i],"\",0,-1)-1 ), 2 )
    If StringRight($TARGET, 1) = "\" Then $TARGET = StringTrimRight($TARGET, 1)
    If StringInStr($TARGET, "@") Then
    FileWrite($FH, 'If Not FileExists(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'DirCreate(' & $TARGET & ' & ' & '"' & $DIERECTORIES & '")' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'FileInstall("' & $aFILES[$i] & '", ' & $TARGET & ' & ' & '"' & StringTrimLeft($aFILES[$i],2) & '")' & @CRLF)
    Else
    FileWrite($FH, 'If Not FileExists("' & $TARGET & $DIERECTORIES & '") Then' & @CRLF)
    FileWrite($FH, @TAB & 'DirCreate("' & $TARGET & $DIERECTORIES & '")' & @CRLF)
    FileWrite($FH, 'EndIf' & @CRLF)
    FileWrite($FH, 'FileInstall("' & $aFILES[$i] & '", "' & $TARGET & StringTrimLeft($aFILES[$i],2) & '")' & @CRLF)
    EndIf
    Next
    EndSelect
    FileClose($FH)
    EndFunc ;==>_WriteInstall

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

    ;********************************************************************************
    ; AutoIt Version: 3.0
    ; Language: English
    ; Platform: Win9x/NT/XP
    ; Author: jos van der Zande
    ;
    ; Find files in directory and subdirectories and return it in an Array, all coded in Autoit3
    ;
    ; _GetFileList($DIR, $FILEMASK, 1) ; _GetFileList($DIR, $FILEMASK [, Flag]) Flag GetFile(Default) = 0 , GetDirOnly = 1
    ;********************************************************************************
    ;Recursive search for filemask
    ;********************************************************************************

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

    Func _GetFileList($T_DIR,$T_MASK,$DIR_ONLY=0)
    Dim $N_DIRNAMES[200000] ; max number of directories that can be scanned
    Local $N_DIRCOUNT = 0
    Local $N_FILE
    Local $N_SEARCH
    Local $N_TFILE
    Local $N_OFILE
    Local $T_FILENAMES
    Local $T_FILECOUNT
    Local $T_DIRCOUNT = 1
    Local $FILEMASK
    ; check Filemask \ for empty File-Array by GetDirOnly
    If $FILEMASK = "n" Then $FILEMASK = "*.no"
    ; remove the end \ If specified
    If StringRight($T_DIR,1) = "\" Then $T_DIR = StringTrimRight($T_DIR,1)
    $N_DIRNAMES[$T_DIRCOUNT] = $T_DIR
    ; Exit if base dir doesn't exists
    If Not FileExists($T_DIR) Then Return 0
    ; keep on looping until all directories are scanned
    While $T_DIRCOUNT > $N_DIRCOUNT
    $N_DIRCOUNT = $N_DIRCOUNT + 1
    ; find all subdirs in this directory and save them in a array
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\*.*")
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") > 0 Then
    $T_DIRCOUNT = $T_DIRCOUNT + 1
    $N_DIRNAMES[$T_DIRCOUNT] = $N_TFILE
    EndIf
    Wend
    FileClose($N_SEARCH) ; find all Files that mtach the MASK
    $N_SEARCH = FileFindFirstFile($N_DIRNAMES[$N_DIRCOUNT] & "\" & $T_MASK )
    If $N_SEARCH = -1 Then ContinueLoop
    While 1
    $N_FILE = FileFindNextFile($N_SEARCH)
    If @error Then ExitLoop
    ; skip these references
    If $N_FILE = "." Or $N_FILE = ".." Then ContinueLoop
    $N_TFILE = $N_DIRNAMES[$N_DIRCOUNT] & "\" & $N_FILE
    ; if Directory than add to the list of directories to be processed
    If StringInStr(FileGetAttrib( $N_TFILE ),"D") = 0 Then
    $T_FILENAMES = $T_FILENAMES & $N_TFILE & @CR
    $T_FILECOUNT = $T_FILECOUNT + 1
    ;MsgBox(0,'filecount ' & $T_FILECOUNT ,$N_TFILE)
    EndIf
    Wend
    FileClose($N_SEARCH)
    Wend
    If $DIR_ONLY = 0 Then
    $T_FILENAMES = StringTrimRight($T_FILENAMES,1)
    $N_OFILE = StringSplit($T_FILENAMES,@CR)
    Return( $N_OFILE )
    Else
    ReDim $N_DIRNAMES[$N_DIRCOUNT+1]
    $N_DIRNAMES[0] = $N_DIRCOUNT
    Return $N_DIRNAMES
    EndIf
    EndFunc ;==>_GetFileList

    [/autoit]

    Dateien

    WriteInstall.au3 13,88 kB – 659 Downloads
  • _IEFormElementSetValue --> InvalidDataType

    • BugFix
    • 11. März 2007 um 13:46

    Hier die Infos zum Hinweisfenster:

    Zitat

    >>>>>>>>>>>> Window Details <<<<<<<<<<<<<
    Title: Sicherheitshinweis
    Class: #32770
    Size: X: 469 Y: 428 W: 342 H: 168

    >>>>>>>>>>> Mouse Details <<<<<<<<<<<
    Window: X: 209 Y: 142
    Cursor ID: 2

    >>>>>>>>>>> Pixel Color Under Mouse <<<<<<<<<<<
    RGB: Hex: 0xC0C0C0 Dec: 12632256

    >>>>>>>>>>> Control Under Mouse <<<<<<<<<<<
    Size: X: 170 Y: 111 W: 75 H: 23
    Control ID: 6
    ClassNameNN: Button1
    Text: &Ja
    Style: 0x50010001
    ExStyle: 0x00000004

    >>>>>>>>>>> Status Bar Text <<<<<<<<<<<


    >>>>>>>>>>> Visible Window Text <<<<<<<<<<<
    &Ja
    Sie sind im Begriff, die Verbindung auf eine nicht sichere Verbindung umzulenken.
    &Nein
    Die Daten, die an die bisherige Site gesendet wurden, werden möglicherweise ebenfalls an eine nicht sichere Site gesendet. Möchten Sie den Vorgang fortsetzen?

    Alles anzeigen

    Das Seltsame ist halt, dass bei manuellem Click auf "Login" das aufpopende Fenster von WinWait( ) erkannt wird, nicht aber bei Übertragung mit "_IEFormSubmit ($oForm)".

    EDIT

    Habs gefunden, per default wartet "_IEFormSubmit( )" bis die Seite komplett geladen ist. Das kann hier aber nur passieren, wenn vorher die Sicherheitsabfrage bestätigt wird.
    Also "_IEFormSubmit ($oForm, 0)" damit das Script weiterläuft und nun klappts auch.

  • _IEFormElementSetValue --> InvalidDataType

    • BugFix
    • 11. März 2007 um 13:17

    Ich entere nochmal meinen Thread, da sich ein anderes Problem ergeben hat.
    Nach Übermittlung der Login-Daten popt ein Hinweisfenster auf:
    [Blockierte Grafik: http://img-up.net/thumbs/hinweis36uxM.PNG]
    Darauf reagiere ich mit:

    [autoit]

    WinWait("Sicherheitshinweis")
    ControlClick("Sicherheitshinweis", "", 6)

    [/autoit]


    Das funktioniert aber nur, wenn ich das Login per Hand durchführe. Bei Einloggen mittels "_IEFormSubmit ($oForm)" erscheint auch völlig richtig das Hinweisfenster (also Login-Daten korrekt übermittelt) aber die WinWait - Funktion erkennt nicht das Hinweisfenster. Alternative Versuche mit WinWaitActive oder WinExist führen zu gleichem Ergebnis.

  • _IEFormElementSetValue --> InvalidDataType

    • BugFix
    • 11. März 2007 um 11:59

    Danke snoozer,
    mein Fehler lag hier:
    $oForm = _IEFormGetCollection ($oIE, 0) statt
    $oForm = _IEFormGetCollection ($oIE, 1)

    Dann klappt auch meine Version über Index, allerdings ist dies im Widerspruch zur Hilfe kein Null-basierter Index, sondern bei 1 beginnend:

    [autoit]

    $o_login = _IEFormElementGetCollection ($oForm, 2) ; Username ( Form ~Nr. 2, ~Name = 0 )
    $o_password = _IEFormElementGetCollection ($oForm, 3) ; Password ( Form ~Nr. 3, ~Name = 0 )

    [/autoit]


    Unklar ist mir nur, warum sich die Formen auch in der Form:
    $oEmail = _IEFormElementGetObjByName ($oForm, "email")
    ansprechen lassen, obwohl die Objektnamen mit 0 ausgelesen werden.

  • _IEFormElementSetValue --> InvalidDataType

    • BugFix
    • 11. März 2007 um 11:01

    Hi,
    folgendes Probleme:
    Ich hatte für meinen maxdome-Zugang ein Anmeldescript geschrieben, dass auch funktioniert. Nur hatte ich damals nur mit Send( ) - Befehlen gearbeitet.
    Nun wollte ich das mal sauber mit den IE.au3 - Funktionen umschreiben. Bekomme aber immer eine Fehlermeldung:

    [autoit]

    $oIE = _IECreate ("https://maxdomeservice.1und1.de/login/start/index.php")
    $oForm = _IEFormGetCollection ($oIE, 0)
    $o_login = _IEFormElementGetCollection ($oForm, 1) ; Username ( Form ~Nr. 2, ~Name = 0 )
    $o_password = _IEFormElementGetCollection ($oForm, 2) ; Password ( Form ~Nr. 3, ~Name = 0 )
    _IEFormElementSetValue ($o_login, "eine@eMail")
    _IEFormElementSetValue ($o_password, "einPasswort")
    _IEFormSubmit ($oForm)

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

    ; Fehlermeldung:
    ; --> IE.au3 Error from function _IEFormElementSetValue, $_IEStatus_InvalidDataType

    [/autoit]


    Hat vielleicht jemand eine Idee?

  • _FileReadToArray Problem

    • BugFix
    • 9. März 2007 um 23:00
    Zitat

    Wie kann man denn Bilder hochladen?


    Lad dein Bild auf einen Dienst, wie z.B. IMG-UP.
    Dort erhältst du dann den Link.

  • Auslesen von Combobox und Schleifenproblematik

    • BugFix
    • 9. März 2007 um 08:58
    [autoit]

    Opt("GUIOnEventMode", 1) ; Wechsle in den OnEvent Modus
    ;;
    ;;
    While 1

    $msg = GUIGetMsg() ; Ersetze das mit Sleep(100)

    Wend

    [/autoit]


    Schönheitskorrektur:

    OnEventMode ODER GUIGetMsg( )

    Da du dich für OnEventMode entschieden hast schmeiß GUIGetMsg( ) ganz raus. Verwirrt dich sonst nur selbst.

  • Fragen zur WinRar und Nero

    • BugFix
    • 3. März 2007 um 15:34

    Das Wechseln zwischen den Registerkarten erfolgt i.A. mit STRG+TAB (vorwärts) und mit STRG+SHIFT+TAB (rückwärts).

    Das Nero-Script hab ich mir noch nicht angeschaut ;)

  • mein erstes Projekt

    • BugFix
    • 2. März 2007 um 09:12

    Wirf auch mal 'nen Blick in unser schönes Tutorial - Link auf der Portalseite.
    Mal der Ansatz:

    Spoiler anzeigen
    [autoit]

    ; z.B. 6 Dateien zu prüfen
    Dim $arFiles[6][2] ; vergleichbar mit einer Tabelle: 6 Zeilen, 2 Spalten
    Dim $S_Path = "S:\TOP\Check_DataBase\Programme\"

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

    ; die Dateinamen eintragen
    $arFiles[0][0] = "File 1" ; Array-Index ist Null-basiert, erstes Element = Index 0
    $arFiles[1][0] = "File 2"
    ; .... usw.

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

    ; jetzt Status auf 0 setzen für alle 6 Elemente
    For $i = 0 To 5
    $arFiles[$i][1] = 0
    Next

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

    ; hier prüfst du ob vorhanden und setzt den Status 1, falls ja
    For $i = 0 To 5
    If FileExists($local_pfad & "\" & $arFiles[$i][0]) Then $arFiles[$i][1] = 1
    Next

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

    ; wenn das OK zum Kopieren gegeben ist
    For $i = 0 To 5
    If $arFiles[$i][1] = 0 Then FileCopy($S_Path & $arFiles[$i][0], $local_pfad & "\" & $arFiles[$i][0])
    Next

    [/autoit]
  • mein erstes Projekt

    • BugFix
    • 1. März 2007 um 21:51

    Hi, also wie ich das so sehe bist du in der Lage aus Tipps dir selbst das wichtigste herauszuziehen - prima ;)

    Mal ein erster Tipp. Um nur die Dateien zu kopieren die fehlen, arbeite am besten mit einem Array. Als Einträge: Datei - Status. Könnte dann so aussehen:
    $arFiles[1][0] = "version.ini"
    $arFiles[1][1] = 0 ; (0 = nicht vorhanden, 1 = vorhanden)

    Dann den Status beim Abfragen setzen. Anschließend das Array durchlaufen und bei Status 0 kopieren

  • Bestimmte Msn fenster schließen?

    • BugFix
    • 27. Februar 2007 um 22:55

    Pee hat dir doch schon den Tipp gegeben.
    Warum wendest du es nicht an?

    [autoit]

    AutoItSetOption("WinTitleMatchMode", 2)

    [/autoit]


    EDIT:

    Na, noch nicht klar? ;)

    Hier mal kpl.

    Spoiler anzeigen
    [autoit]

    AutoItSetOption("WinTitleMatchMode", 2)
    HotKeySet("^e", "_End") ; Hotkey um das Programm zu beenden
    While 1
    If WinExists("Unterhaltung") Then WinClose("Unterhaltung")
    Sleep(100) ; damit dein Prozessor nicht überkocht ;)
    Wend

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

    Func _End()
    HotKeySet("^e") ; Hotkey aufheben
    Exit
    EndFunc

    [/autoit]
  • Dateisuche mit AutoIt

    • BugFix
    • 26. Februar 2007 um 15:48

    Ja, rekursive Dateisuche ist das richtige Stichwort.
    Dazu hatte ich mal 'nen Thread gemacht. Guckst du hier.

  • 10 € Schein Analysetool

    • BugFix
    • 25. Februar 2007 um 21:18

    Hi,

    hab grad etwas Langeweile gehabt und meine Lösung noch verfeinert.
    Alternativ kann auch "50.000 für 5" gespielt werden (läuft manchmal hier in der Region).
    Das ganze ist jetzt noch ein bischen optisch aufgebessert, die gewinnträchtigen Scheine werden nach Gewinnstufe sortiert und farblich gekennzeichnet ausgegeben.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GuiListView.au3>
    Opt("GUIOnEventMode", 1)

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

    Dim $create = " Erstellt mit AutoIt (https://autoit.de/www.autoit.de)"
    Dim $title1 = "100.000 für 10"&$create, $title2 = "50.000 für 5 "&$create, $spiel = 0 ; 0=100.000->10 , 1=50.000->5
    Dim $arAlleSN, $arTreffer[1][2], $Fehler = 0, $SN
    Dim $alleRichtig = 0, $dreiRichtig = 0, $zweiRichtig = 0, $einRichtig = 0, $lastEntry, $new = 0
    Dim $rot = 0xFF0000, $lightcyan = 0xE0FFFF, $indigo = 0x4B0082, $limegreen = 0x32CD32, $springgreen = 0x00FA9A
    Dim $black = 0x000000, $crimson = 0xDC143C, $lemonchiffon = 0xFFFACD, $pink = 0xFF69B4
    $arAlleSN = IniReadSection(@ScriptDir & "\SN10Euro.INI", "serien")
    $arTreffer[0][0] = 0

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

    If @error = 1 Then $Fehler = 1

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

    $Form1 = GUICreate($title1, 636, 384, -1, -1)
    GUISetBkColor($lemonchiffon)
    GUISetOnEvent($GUI_EVENT_CLOSE, "Ende")
    $GroupSystem = GUICtrlCreateGroup("Spielsystem", 17, 8, 607, 40)
    $Radio00 = GUICtrlCreateRadio("50.000 für &5", 104, 21, 140)
    GUICtrlSetOnEvent(-1, "Radio50")
    $Radio01 = GUICtrlCreateRadio("100.000 für &10", 400, 21, 140)
    GUICtrlSetOnEvent(-1, "Radio100")
    GUICtrlSetState(-1, $GUI_CHECKED)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $ListView1 = GUICtrlCreateListView("Seriennummern", 17, 59, 353, 305)
    GUICtrlSetColor(-1, $indigo)
    _GUICtrlListViewSetColumnWidth(-1, 0, 349)
    GUICtrlSetBkColor(-1, $lightcyan)
    GUICtrlSetTip(-1, "Per Tastatur wechseln Sie mit:"& @LF & @LF &" Strg+s"& @LF & @LF& " in die Seriennummernliste.")
    $Group0 = GUICtrlCreateGroup(" Modus ", 384, 57, 240, 40)
    $Radio1 = GUICtrlCreateRadio("E&rfassen", 400, 70, 80)
    GUICtrlSetOnEvent(-1, "RadioErfassen")
    $Radio2 = GUICtrlCreateRadio("Ver&gleichen", 520, 70, 80)
    GUICtrlSetOnEvent(-1, "RadioVergleichen")
    GUICtrlSetState(-1, $GUI_CHECKED)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group1 = GUICtrlCreateGroup(" Seriennummer ", 384, 99, 240, 57)
    $Input1 = GUICtrlCreateInput("", 395, 121, 220, 21, $ES_UPPERCASE)
    GUICtrlSetColor(-1, $crimson)
    GUICtrlSetBkColor(-1, $lightcyan)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Button1 = GUICtrlCreateButton("&Vergleichen", 384, 168, 70, 21, 0)
    GUICtrlSetOnEvent(-1, "Vergleichen")
    $Group2 = GUICtrlCreateGroup(" Ergebnis ", 384, 198, 240, 167)
    $Label0 = GUICtrlCreateLabel("Hauptgewinn", 465, 216, 110, 20)
    GUICtrlSetColor($Label0, $rot)
    GUICtrlSetStyle(-1, $WS_DISABLED)
    $Label1 = GUICtrlCreateLabel("letzte 3 Ziffern richtig", 396, 254, 102, 17)
    GUICtrlSetStyle(-1, $WS_DISABLED)
    $Label2 = GUICtrlCreateLabel("letzte 2 Ziffern richtig", 396, 292, 102, 17)
    GUICtrlSetStyle(-1, $WS_DISABLED)
    $Label3 = GUICtrlCreateLabel("letzte Ziffer richtig", 396, 330, 87, 17)
    GUICtrlSetStyle(-1, $WS_DISABLED)
    $Input2 = GUICtrlCreateInput("", 550, 251, 45, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_READONLY))
    $Input3 = GUICtrlCreateInput("", 550, 289, 45, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_READONLY))
    $Input4 = GUICtrlCreateInput("", 550, 327, 45, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_READONLY))
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Button2 = GUICtrlCreateButton("&Ende", 554, 168, 70, 21, 0)
    GUICtrlSetOnEvent(-1, "Ende")
    $Button3 = GUICtrlCreateButton("&Löschen", 469, 168, 70, 21, 0)
    GUICtrlSetOnEvent(-1, "DeleteSN")

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

    If $Fehler = 1 Then
    $lastEntry = 0
    Else
    $lastEntry = StringTrimLeft($arAlleSN[$arAlleSN[0][0]][1], 2)
    _ListAllSN()
    EndIf
    If Not FileExists(@ScriptDir & "\SN10Euro.INI") Then
    GUICtrlSetState($Button3, $GUI_DISABLE)
    Else
    GUICtrlSetState($Button3, $GUI_ENABLE)
    EndIf

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

    GUISetState(@SW_SHOW)
    ControlFocus("", "", $Input1)
    _SetTextCol()

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

    HotKeySet("^s", "_StrgS")

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

    While 1
    Sleep(100)
    WEnd

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

    Func _StrgS()
    If _GUICtrlListViewGetItemCount($listView1) > 0 Then
    GUICtrlSetState($ListView1, $GUI_FOCUS)
    _GUICtrlListViewSetItemSelState($listView1, 0, 1, 1)
    Else
    ControlFocus("", "", $Input1)
    EndIf
    EndFunc

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

    Func _ListAllSN()
    If IsArray($arAlleSN) Then
    For $i = 1 To $arAlleSN[0][0]
    _GUICtrlListViewInsertItem($ListView1, -1, $arAlleSN[$i][1])
    Next
    EndIf
    EndFunc

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

    Func _SetTextCol()
    ; Spielart
    If GUICtrlRead($Radio00) = 1 Then
    GUICtrlSetColor($Radio00, $limegreen)
    GUICtrlSetColor($Radio01, $black)
    Else
    GUICtrlSetColor($Radio00, $black)
    GUICtrlSetColor($Radio01, $limegreen)
    EndIf
    ; Modus
    If GUICtrlRead($Radio1) = 1 Then
    GUICtrlSetColor($Radio1, $limegreen)
    GUICtrlSetColor($Radio2, $black)
    Else
    GUICtrlSetColor($Radio1, $black)
    GUICtrlSetColor($Radio2, $limegreen)
    EndIf
    EndFunc

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

    Func Radio50()
    WinSetTitle($Form1, "", $title2)
    $spiel = 1
    _SetTextCol()
    ControlFocus("", "", $Input1)
    EndFunc

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

    Func Radio100()
    WinSetTitle($Form1, "", $title1)
    $spiel = 0
    _SetTextCol()
    ControlFocus("", "", $Input1)
    EndFunc

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

    Func RadioErfassen()
    _SetTextCol()
    GUICtrlSetData($Button1, "Er&fassen")
    If Not FileExists(@ScriptDir & "\SN10Euro.INI") Then
    GUICtrlSetState($Button3, $GUI_DISABLE)
    Else
    GUICtrlSetState($Button3, $GUI_ENABLE)
    EndIf
    GUICtrlSetStyle($Label0, $WS_DISABLED)
    GUICtrlSetFont($Label0, 9, 400)
    GUICtrlSetStyle($Label1, $WS_DISABLED)
    GUICtrlSetStyle($Label2, $WS_DISABLED)
    GUICtrlSetStyle($Label3, $WS_DISABLED)
    _GUICtrlListViewDeleteAllItems($ListView1)
    If $Fehler = 0 Then _ListAllSN()
    ControlFocus("", "", $Input1)
    GUICtrlSetData($Input2, "")
    GUICtrlSetData($Input3, "")
    GUICtrlSetData($Input4, "")
    EndFunc

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

    Func RadioVergleichen()
    _SetTextCol()
    GUICtrlSetData($Button1, "&Vergleichen")
    ControlFocus("", "", $Input1)
    EndFunc

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

    Func Vergleichen()
    If GUICtrlRead($Radio2) = 1 Then ; vergleichen
    If $Fehler = 1 Then
    MsgBox(48, 'ACHTUNG', "Es sind noch keine Seriennummern zum Vergleich hinterlegt!")
    Return
    EndIf
    If GUICtrlRead($Input1) = "" Then
    MsgBox(48, 'ACHTUNG', "Bitte eine Seriennummer eingeben!")
    Return
    EndIf
    _vergleich()
    _GUICtrlListViewDeleteAllItems($ListView1)
    _treffer()
    $alleRichtig = 0
    Else ; erfassen
    $SN = GUICtrlRead($Input1)
    If $SN <> "" Then
    _GUICtrlListViewInsertItem($ListView1, -1, $SN)
    IniWrite(@ScriptDir & "\SN10Euro.INI", "serien", "sn" & $lastEntry +1, $SN)
    $lastEntry += 1
    $Fehler = 0
    $new = 1
    GUICtrlSetState($Button3, $GUI_ENABLE)
    Else
    MsgBox(0, 'ACHTUNG!', "Bitte eine Seriennummer für Vergleich eingeben!")
    EndIf
    EndIf
    ControlFocus("", "", $Input1)
    EndFunc

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

    Func DeleteSN()
    Dim $tmp
    If $new = 1 Then $arAlleSN = IniReadSection(@ScriptDir & "\SN10Euro.INI", "serien")
    $tmp = _GUICtrlListViewGetItemText($ListView1)
    If $tmp <> "" And MsgBox(292,"Löschen","Soll die Seriennummer:" & @LF & $tmp & @LF & "wirklich gelöscht werden?") = 6 Then
    For $i = 1 To $arAlleSN[0][0]
    If $arAlleSN[$i][1] = $tmp Then
    $arAlleSN[$i][1] = ""
    ExitLoop
    EndIf
    Next
    FileDelete(@ScriptDir & "\SN10Euro.INI")
    $lastEntry = 0
    For $i = 1 To $arAlleSN[0][0]
    If $arAlleSN[$i][1] <> "" Then
    IniWrite(@ScriptDir & "\SN10Euro.INI", "serien", "sn" & $lastEntry +1, $arAlleSN[$i][1])
    $lastEntry += 1
    $Fehler = 0
    EndIf
    Next
    _GUICtrlListViewDeleteAllItems($ListView1)
    $arAlleSN = IniReadSection(@ScriptDir & "\SN10Euro.INI", "serien")
    _ListAllSN()
    If Not FileExists(@ScriptDir & "\SN10Euro.INI") Then GUICtrlSetState($Button3, $GUI_DISABLE)
    EndIf
    ControlFocus("", "", $Input1)
    EndFunc

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

    Func _vergleich()
    Dim $txtFull1 = " / Volltreffer = 100.000 €", $txtFull2 = " / Volltreffer = 50.000 €"
    Dim $txt3R1 = " / 3 R = 10.000 €", $txt3R2 = " / 3 R = 5.000 €"
    Dim $txt2R1 = " / 2 R = 1.000 €", $txt2R2 = " / 2 R = 500 €"
    Dim $txt1R1 = " / 1 R = 100 €", $txt1R2 = " / 1 R = 50 €"
    $SN = GUICtrlRead($Input1)
    If $new = 1 Then $arAlleSN = IniReadSection(@ScriptDir & "\SN10Euro.INI", "serien")
    For $i = 1 To $arAlleSN[0][0]
    If $arAlleSN[$i][1] = $SN Then
    $alleRichtig += 1
    If $spiel = 0 Then
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txtFull1
    $arTreffer[$n-1][1] = 1
    Else
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txtFull2
    $arTreffer[$n-1][1] = 1
    EndIf
    $arTreffer[0][0] += 1
    ElseIf StringRight($arAlleSN[$i][1], 3) = StringRight($SN, 3) Then
    $dreiRichtig += 1
    If $spiel = 0 Then
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt3R1
    $arTreffer[$n-1][1] = 2
    Else
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt3R2
    $arTreffer[$n-1][1] = 2
    EndIf
    $arTreffer[0][0] += 1
    ElseIf StringRight($arAlleSN[$i][1], 2) = StringRight($SN, 2) Then
    $zweiRichtig += 1
    If $spiel = 0 Then
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt2R1
    $arTreffer[$n-1][1] = 3
    Else
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt2R2
    $arTreffer[$n-1][1] = 3
    EndIf
    $arTreffer[0][0] += 1
    ElseIf StringRight($arAlleSN[$i][1], 1) = StringRight($SN, 1) Then
    $einRichtig += 1
    If $spiel = 0 Then
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt1R1
    $arTreffer[$n-1][1] = 4
    Else
    $n = UBound($arTreffer,1)+1
    ReDim $arTreffer[$n][2]
    $arTreffer[$n-1][0] = $arAlleSN[$i][1] & $txt1R2
    $arTreffer[$n-1][1] = 4
    EndIf
    $arTreffer[0][0] += 1
    EndIf
    Next
    EndFunc

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

    Func _treffer()
    _ArraySort($arTreffer, 0,1,0,2,1)
    For $i = 1 To $arTreffer[0][0]
    $item = GUICtrlCreateListViewItem($arTreffer[$i][0], $ListView1)
    Switch $arTreffer[$i][1]
    Case 1
    GUICtrlSetBkColor($item, $pink)
    Case 2
    GUICtrlSetBkColor($item, $limegreen)
    Case 3
    GUICtrlSetBkColor($item, $lemonchiffon)
    Case 4
    GUICtrlSetBkColor($item, $springgreen)
    EndSwitch
    Next
    If $alleRichtig = 1 Then
    GUICtrlSetStyle($Label0, $GUI_SS_DEFAULT_LABEL)
    GUICtrlSetFont($Label0, 12, 430)
    EndIf
    GUICtrlSetState($Button3, $GUI_DISABLE)
    GUICtrlSetStyle($Label1, $GUI_SS_DEFAULT_LABEL)
    GUICtrlSetStyle($Label2, $GUI_SS_DEFAULT_LABEL)
    GUICtrlSetStyle($Label3, $GUI_SS_DEFAULT_LABEL)
    GUICtrlSetData($Input2, $dreiRichtig)
    GUICtrlSetData($Input3, $zweiRichtig)
    GUICtrlSetData($Input4, $einRichtig)
    ReDim $arTreffer[1][2]
    $arTreffer[0][0] = 0
    $dreiRichtig = 0
    $zweiRichtig = 0
    $einRichtig = 0
    EndFunc

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

    Func Ende()
    HotKeySet("^s")
    Exit
    EndFunc

    [/autoit]

    EDIT:
    Hab meinen Fehler entdeckt, Sortierung funktioniert nun auch.

    Dateien

    100000_f 10,72 kB – 289 Downloads

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™