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

Beiträge von FireFlyer

  • etwas auf einen FTP Server hochladen

    • FireFlyer
    • 29. März 2008 um 20:14

    Hallo,

    ich suche nach einem Befehl/Funktion mit dem man eine Datei auf einen FTP server hochladen kann am besten noch in ein bestimmtes verzeichnis davon, irgendwie gibts bei der boardsuche nix mit FTP ka warum und google bzw. das englische Forum spucken nix wirklich interessantes dazu aus...
    Es geht um ein Spiel (CS) bzw. die Demos davon, diese muss man nach einem Ligaspiel den anderen Spielern zur Verfügung stellen, mein Programm macht jetzt soweit dass es diese 4 Dateien automatisch in ein RAR archiv Packt und jetzt sollte es anschließend diese Datei auf meinen FTP hochladen

    Hoffe jemand kann mir helfen
    MFG & Danke für jede Hilfe: Fire

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 10. März 2008 um 23:50

    hmmmm.... joar könnte gehen ich teste es... morgen Danke schonmal :)

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 10. März 2008 um 23:12

    @mega wenn du mir eine SFX oder sowas zeigst die:
    man per Ausführen (run) öffnen kann (kla geht bei jeder) und man direkt per Pararmeter das Zielverzeichnis bestimmen kann, sodass das ganze im Hintergrund läuft, dann mach ich das ;)

  • Array variable has incorrect number of subscripts or subscript dimension range exceeded

    • FireFlyer
    • 10. März 2008 um 19:16

    ich kenn jetzt zwar die datei net aber ich rate mal :D

    Du hast bei FileReadLine(DATEI, LINE) die line vergessen also welche Zeile er auslesen soll, wenn du die ganze datei haben willst benutze nur FileRead,
    Da $line = "" ist gibt es auch nix zu splitten d.h. $ADuser = 0 ;) deswegen gibts da dann auch kein array

  • nach neustart die Setups fortsetzen

    • FireFlyer
    • 10. März 2008 um 19:12

    öhhm für alcohol hab ich schonmal en script geschrieben :D

    Das wird vor dem restart gemacht:

    Spoiler anzeigen
    [autoit]

    Regwrite( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultUserName", "REG_SZ", @UserName)
    ;MsgBox(0, "BLA", @UserName)
    $input1 = InputBox( "Benutzerpasswort", "Bitte geben sie ihr Benutzerpasswort ein", "", "*")
    ;MsgBox(0, "BLA", $input1)
    Regwrite( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword", "REG_SZ", $input1)
    sleep(100)
    Regwrite( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "1")
    run( "Alcohol120.exe")
    WinWait( "Selbstentpackendes WinRAR-Archiv")
    ControlSetText( "Selbstentpackendes WinRAR-Archiv", "", 1001, @TempDir &"\Alcohol120\")
    sleep(500)
    ControlClick( "Selbstentpackendes WinRAR-Archiv", "", 1)
    sleep(1000)
    $alcoholinput = InputBox("Programmordner", "Wohin soll Alcohol 120% installiert werden?", "C:\Programme\AlcoholSoft\")
    If FileExists( @TempDir &"\Alcohol120\pfad.txt") Then
    FileDelete( @TempDir &"\Alcohol120\pfad.txt")
    EndIf
    sleep(500)
    FileWrite( @TempDir &"\Alcohol120\pfad.txt", $alcoholinput)
    run( @TempDir &"\Alcohol120\setup.exe")
    WinWait( "Alcohol 120% Setup", "Welcome")
    sleep(500)
    ControlCommand( "Alcohol 120% Setup", "", "Button4", "Check", "")
    sleep(100)
    ControlClick( "Alcohol 120% Setup", "", 293)
    WinWait( "Alcohol 120% Setup", "License")
    sleep(500)
    ControlCommand( "Alcohol 120% Setup", "", "Button3", "Check", "")
    sleep(100)
    ControlClick( "Alcohol 120% Setup", "", 293)
    WinWait( "Alcohol 120% Setup", "Destination")
    ControlClick( "Alcohol 120% Setup", "", 1538)
    WinWait( "Alcohol 120% Setup", "Look")
    sleep(500)
    ControlSetText( "Alcohol 120% Setup", "", 450, $alcoholinput)
    sleep(500)
    ControlClick( "Alcohol 120% Setup", "", 285)
    sleep(500)
    WinWait( "Alcohol 120% Setup", "Destination")
    sleep(500)
    ControlClick( "Alcohol 120% Setup", "", 293)
    WinWait( "Alcohol 120% Setup", "Select")
    sleep(500)
    ControlClick( "Alcohol 120% Setup", "", 293)
    WinWait( "Alcohol 120% Setup", "Ready")
    sleep(500)
    ControlClick( "Alcohol 120% Setup", "", 357)
    sleep(100)
    ControlClick( "Alcohol 120% Setup", "", 293)
    WinWait( "Alcohol 120% Setup", "successfully")
    ControlClick( "Alcohol 120% Setup", "", 285)
    sleep(100)
    RegWrite( "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "Alcohol120", "REG_SZ", @TempDir &"\Alcohol120\INSTALL2.exe")
    Shutdown(2)

    [/autoit]

    Und das danach ;)

    Spoiler anzeigen
    [autoit]

    sleep(30000)
    RegDelete( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "DefaultPassword")
    RegWrite( "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon", "AutoAdminLogon", "REG_SZ", "0")
    RegDelete( "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run", "Alcohol120")
    $alcoholinput = FileReadLine( @TempDir &"\Alcohol120\pfad.txt", 1)
    $string = StringRight( $alcoholinput, 1)
    If $string = "\" Then
    $alcoholinput2 = $alcoholinput
    ;MsgBox(0, "LOL1", $alcoholinput2)
    Else
    $alcoholinput2 = $alcoholinput&"\"
    ;MsgBox(0, "LOL2", $alcoholinput2)
    EndIf
    $alcoholinput3 = $alcoholinput2&"Alcohol 120\"
    ;MsgBox(0, "TEST", $alcoholinput3)
    FileCopy( @TempDir &"\Alcohol120\Crack.exe", $alcoholinput3)
    sleep(2000)
    run( $alcoholinput3&"crack.exe", $alcoholinput3)
    sleep(2000)
    ControlClick( "Alcohol 120% v1.9.5.3105 Retail Crack", "", 108)
    sleep(7000)
    ControlClick( "Alcohol 120% v1.9.5.3105 Retail Crack", "", 110)
    sleep(7000)
    FileDelete( @TempDir &"\Alcohol120\pfad.txt")
    FileDelete( @TempDir &"\Alcohol120\Crack.exe")
    FileDelete( @TempDir &"\Alcohol120\setup.exe")
    FileDelete( @TempDir &"\Alcohol120\setup.ini")
    FileDelete( @TempDir &"\Alcohol120\setup.msi")
    run( $alcoholinput3&"alcohol.exe")

    [/autoit]

    Is jetzt vllt net schön gelöst aber es erfüllt seinen Zweck und funktioniert prima :)

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 10. März 2008 um 18:53

    öhh ja les ich auch grad^^ LOL aber es geht irgendwie trotzdem :D

    Hab die Funktion so benutzt: FileInstallFolder("C:TEST", "C:TEST2", 1) und er hat alle dateien da reininstalliert^^


    //EDIT: *schei*** es geht direkt von scite aus aber nicht wenn man das script compilieren will :/... kann man da irgendwas trixxxxxen?

    Wie funktioniert denn der Befehl #include könnte man mit dem was machen???

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 10. März 2008 um 17:14

    könnte man das net als UDF (is jedenfalls ein versuch von mir :D) nehmen? bei mir hats auf jeden fall funktioniert :D

    Spoiler anzeigen
    [autoit]

    #include <file.au3>
    Func FileInstallFolder($from, $to, $overwrite)
    If StringRight($from, 1) <> "\" Then
    $from = $from&"\"
    EndIf
    If StringRight($to, 1) <> "\" Then
    $to = $to&"\"
    EndIf
    $files = _FileListToArray($from, "*", 1)
    Select
    Case @error = 1
    SetError(1)
    Return(0)
    Case @error = 2
    SetError(2)
    Return(0)
    Case @error = 3
    SetError(3)
    Return(0)
    Case @error = 4
    SetError(4)
    Return(0)
    Case Else
    $dir = DirCreate($to)
    If $dir = 0 Then
    SetError(5)
    Return(0)
    EndIf
    For $i = 1 To $files[0]
    $install = FileInstall($from&$files[$i], $to&$files[$i], $overwrite)
    If $install = 0 Then
    SetError(6)
    Dim $error[2]
    $error[0] = 0
    $error[1] = $files[$i]
    Return($error)
    EndIf
    Next
    SetError(0)
    Return(1)
    EndSelect
    EndFunc ;==>FileInstallFolder

    [/autoit]

    Return Value
    @Error:
    1 = Path not found or invalid
    2 = Invalid $sFilter
    3 = Invalid $iFlag
    4 = No File(s) Found
    5 = Create a directory failed
    6 = FileInstall failed (exception: Returns an Array: $array[0] = 0, $array[1] = Current File)
    ==>Return 0

    Success:
    Return 1

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 10. März 2008 um 01:00

    naja man hat eine sfx, z.b. mit winrar erstellt:

    test.exe wenn man diese öffnet bekommt man ein auswahlfenster wohin man das ganze entpacken will, und dieses auswahlfenster soll garnet kommen sondern das man das ziel per pararmeter angibt: run("C:\test.exe -C:\testordner\") irgendwie so halt^^ und das ganze dann im Hintergrund läuft :)

  • FileInstallFolder ? Geht das ganzen ordner + Unterverzeichnis einbinden ?

    • FireFlyer
    • 9. März 2008 um 23:52

    joar dazu hab ich mal ne frage, gibt es eine sfx die ich quasi mit run ausführen kann also dass sie im hintergrund ohne sichtbar zu sein sich irgendwo hin entpackt?

  • ComboBox wieder einen Default String angeben ohne den Inhalt zu löschen

    • FireFlyer
    • 9. März 2008 um 14:31

    wenn ich das richtig verstanden habe geht diese funktion aber nach dem index oder`?

    Ich habe eine ComboBox mit inhalt d.h. bis zu 80 Strings dadrin, die sind von der Länge her alle gleich bsp: D-1802 (Flugzeugkennzeichen), wenn ich in meinem Proggie jetzt ne datei lade soll er z.b. in der ersten ComboBox D-1802 wieder drinstehn also halt selected sein und der Rest von den Kennzeichen sollte natürlich noch auswählbar sein:

    Das ganze funktioniert seeehr kurz gesagt so, per knopfdruck wird eine Datei (Tabelle) geladen dadurch erhält er z.B. für eine entsprechende ComboBox den String: D-1234, dieser soll dann in einer ComboBox, in der schon Inhalt ist, selected werden

  • ComboBox wieder einen Default String angeben ohne den Inhalt zu löschen

    • FireFlyer
    • 9. März 2008 um 01:17

    Hiho,

    hab hier mal noch ne klitzekleine Frage :), und zwar würd ich gerne einfach einen String als Default setzen, d.h. er soll in der ComboBox schon wieder ausgewählt sein, aber der Rest des Inhalts muss natürlich noch vorhanden sein!
    Habs mit _GUICtlrComboBox_SelectString versucht hat aber irgendwie net geklappt :/

    Hoffe jemand kann mir helfen ;)

    MFG & THX Fire

  • _GUICtrlComboBox_AutoComplete auch für Inputs?

    • FireFlyer
    • 3. März 2008 um 16:02

    hehe danke propagandy, warum gibts das nicht längst schon als udf? :P

    So jetzt zum weiteren Problem bei dem ich wirklich ein Problem mit dem Programmieren selbst und nicht mit dem Coden habe, und zwar da das ganze ja in einer schleife läuft schreibt er das ganze ja immer wieder rein? Wie kann man das so stoppen das er nur reinschreibt sobald der user etwas ändert??? Ich hatte die idee mit _IsPressed aber ist das wirklich sinnvoll?
    Hier nochmal für die scroll-faulen der code :D

    Spoiler anzeigen
    [autoit]

    For $b = 1 To 80
    If _IsFocused($window, $array_inputs[$b][2]) Then
    $read_input2 = GUICtrlRead($array_inputs[$b][2])
    $pos = _ArraySearch_PartFromStart($read_names, $read_input2, 0, 0, 0) ;GEIL :D
    If $pos <> -1 And $read_names[$pos] <> 3 Then
    GUICtrlSetData($array_inputs[$b][2], $read_names[$pos])
    _GUICtrlEdit_SetSel($array_inputs[$b][2], StringLen($read_input2), -1)
    ExitLoop
    EndIf
    EndIf
    Next
    EndIf

    [/autoit]


    achso ja--> @progandy wenn das Input leer ist schreibt er ne 3 rein ka warum aber ich habs unterbunden^^ (If $read_names[$pos] <> 3 Then)

  • _GUICtrlComboBox_AutoComplete auch für Inputs?

    • FireFlyer
    • 2. März 2008 um 17:15

    also soweit hab ichs schonmal :D

    nur er nimmt das ja nicht zeichen für zeichen da der partial search auf True ist ...

    Spoiler anzeigen
    [autoit]

    Func autoausfuellen()
    Select
    Case WinActive($opts_namepgr[2]&" - Seite 1")
    $window = $opts_namepgr[2]&" - Seite 1"
    $state = ControlGetFocus($seite1)
    Case WinActive($opts_namepgr[2]&" - Seite 2")
    $window = $opts_namepgr[2]&" - Seite 2"
    $state = ControlGetFocus($seite2)
    Case WinActive($opts_namepgr[2]&" - Seite 3")
    $window = $opts_namepgr[2]&" - Seite 3"
    $state = ControlGetFocus($seite3)
    Case WinActive($opts_namepgr[2]&" - Seite 4")
    $window = $opts_namepgr[2]&" - Seite 4"
    $state = ControlGetFocus($seite4)
    Case Else
    $state = 0
    EndSelect
    If WinActive($opts_namepgr[2]&" - Seite 1") Or WinActive($opts_namepgr[2]&" - Seite 2") Or WinActive($opts_namepgr[2]&" - Seite 3") Or WinActive($opts_namepgr[2]&" - Seite 4") Then
    For $b = 1 To 80
    If _IsFocused($window, $array_inputs[$b][2]) Then
    $read_input2 = GUICtrlRead($array_inputs[$b][2])
    $pos = _ArraySearch($read_names, $read_input2, 0, 0, 0, True)
    If $pos <> -1 Then
    $1 = StringLen($read_input2)
    GUICtrlSetData($array_inputs[$b][2], $read_names[$pos])
    _GUICtrlEdit_SetSel($array_inputs[$b][2], $1, -1)
    EndIf
    EndIf
    Next
    EndIf
    EndFunc

    [/autoit]
  • _Array2DSearch wohl mal was für den KING OF ARRAY :D

    • FireFlyer
    • 1. März 2008 um 20:06

    ja aber ich dachte das mit dem $GUI_Focused usw geht nur mit classname

  • _Array2DSearch wohl mal was für den KING OF ARRAY :D

    • FireFlyer
    • 1. März 2008 um 19:26

    Hiho also ich bin immer noch bei meinem Programm das eig, vieeel zu viele Inputs hat aber naja gut ^^

    Also es geht um ControlGetFocus der ja leider nur den Classname rausgibt
    Also hab ich mir quasi ein zweites 2D-Array gemacht:

    Spoiler anzeigen
    [autoit]

    $i = 1
    $input_farbe = True
    Global $array_inputs[300][14], $class_edit[40][14]
    $edit = 1
    $class0 = 6
    $class1 = 7
    $class2 = 8
    $class3 = 9
    $class4 = 10
    $class5 = 11
    $class6 = 12
    $class7 = 13
    $class8 = 14
    $class9 = 15
    $class10 = 16
    $class11 = 17
    $class12 = 18
    $class13 = 19
    For $f = 1 To 20
    $array_inputs[$i][0] = GUICtrlCreateInput("", $lb_leiste_left2, $top, $lb_leiste_width1, 20) ;Kennzeichen
    $class_edit[$edit][0] = "Edit"&$class0
    $array_inputs[$i][1] = GUICtrlCreateInput("", $lb_leiste_left3, $top, $lb_leiste_width2, 20) ;Flugzeugtyp
    $class_edit[$edit][1] = "Edit"&$class1
    $array_inputs[$i][2] = GUICtrlCreateInput("", $lb_leiste_left4, $top, $lb_leiste_width3, 20) ;Pilot
    $class_edit[$edit][2] = "Edit"&$class2
    $array_inputs[$i][3] = GUICtrlCreateInput("", $lb_leiste_left5, $top, $lb_leiste_width4, 20) ;Co-Pilot
    $class_edit[$edit][3] = "Edit"&$class3
    $array_inputs[$i][4] = GUICtrlCreateInput("", $lb_leiste_left6, $top, $lb_leiste_width5, 20) ;Startart
    $class_edit[$edit][4] = "Edit"&$class4
    $array_inputs[$i][5] = GUICtrlCreateInput("", $lb_leiste_left7, $top, $lb_leiste_width6, 20) ;Startplatz
    $class_edit[$edit][5] = "Edit"&$class5
    $array_inputs[$i][6] = GUICtrlCreateInput("", $lb_leiste_left8, $top, $lb_leiste_width7, 20) ;Landeplatz
    $class_edit[$edit][6] = "Edit"&$class6
    $array_inputs[$i][7] = GUICtrlCreateInput("", $lb_leiste_left9+3, $top, $lb_leiste_width8, 20, $ES_NUMBER) ;Startzeit H
    $class_edit[$edit][7] = "Edit"&$class7
    $array_inputs[$i][8] = GUICtrlCreateInput("", $lb_leiste_left9+38, $top, $lb_leiste_width8, 20, $ES_NUMBER) ;Startzeit M
    $class_edit[$edit][8] = "Edit"&$class8
    $array_inputs[$i][9] = GUICtrlCreateInput("", $lb_leiste_left10+3, $top, $lb_leiste_width9, 20, $ES_NUMBER) ;Landezeit H
    $class_edit[$edit][9] = "Edit"&$class9
    $array_inputs[$i][10] = GUICtrlCreateInput("", $lb_leiste_left10+38, $top, $lb_leiste_width9, 20, $ES_NUMBER) ;Landezeit M
    $class_edit[$edit][10] = "Edit"&$class10
    $array_inputs[$i][11] = GUICtrlCreateInput("", $lb_leiste_left11+3, $top, $lb_leiste_width10, 20, $ES_NUMBER) ;Flugzeit H
    $class_edit[$edit][11] = "Edit"&$class11
    $array_inputs[$i][12] = GUICtrlCreateInput("", $lb_leiste_left11+38, $top, $lb_leiste_width10, 20, $ES_NUMBER) ;Flugzeit M
    $class_edit[$edit][12] = "Edit"&$class12
    $array_inputs[$i][13] = GUICtrlCreateInput("", $lb_leiste_left12, $top, $lb_leiste_width11, 20) ;Bemerkungen
    $class_edit[$edit][13] = "Edit"&$class13
    $top = $top + 25
    $i += 1
    $class1 += 14
    $edit += 1
    Next

    [/autoit]

    So die Edit&Zahl stimmen das geht auch in anderen Funktionen
    Nun will ich quasi das man mit HotKeySet Pfeilrechts dann in das nächste Feld reinkommt:
    genau so wie nach unten nach oben und nach links ;)

    mein ansatz:

    Spoiler anzeigen
    [autoit]

    Func go_right()
    Select
    Case WinActive($opts_namepgr[2]&" - Seite 1")
    $window = $opts_namepgr[2]&" - Seite 1"
    $state = ControlGetFocus($seite1)
    Case WinActive($opts_namepgr[2]&" - Seite 2")
    $window = $opts_namepgr[2]&" - Seite 2"
    $state = ControlGetFocus($seite2)
    Case WinActive($opts_namepgr[2]&" - Seite 3")
    $window = $opts_namepgr[2]&" - Seite 3"
    $state = ControlGetFocus($seite3)
    Case WinActive($opts_namepgr[2]&" - Seite 4")
    $window = $opts_namepgr[2]&" - Seite 4"
    $state = ControlGetFocus($seite4)
    Case Else
    $state = 0
    EndSelect
    $posarray = _Array2DSearch($class_edit, $state, -1, 0, 20, False, True)
    If $posarray[0] <> 0 Or $posarray[0] <> -1 Then
    MsgBox(0, "lol", $state)
    _ArrayDisplay($posarray)
    ;ControlFocus($window, "",
    EndIf
    EndFunc

    [/autoit]


    So nur wie werte ich das ganze jetzt mit dem _Array2DSearch aus???
    Also es muss dann quasi nur ControlFocus($window, "", $array_inputs[$pos1][$pos2+1] sein damit es dann das rechte Feld von dem jetzigen focused^^

    THX wieder mal für alle die sich mühe geben mich zu verstehn :P

  • _GUICtrlComboBox_AutoComplete auch für Inputs?

    • FireFlyer
    • 1. März 2008 um 00:47

    Hiho ich hätte gerne die Funktion _GUICtrlComboBox_AutoComplete für ein Input... gibts schon sowas?
    Desweiteren versteh ich dieses script auch garnet^^:

    Spoiler anzeigen
    [autoit]

    #include <GUIComboBox.au3>

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

    Opt('MustDeclareVars', 1)

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

    $Debug_CB = False ; Check ClassName being passed to ComboBox/ComboBoxEx functions, set to True and use a handle to another control to see it work

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

    Global $hCombo

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

    Example_Internal()
    Example_External()

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

    Func Example_Internal()
    Local $hGUI

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

    ; Create GUI
    $hGUI = GUICreate("(Internal) ComboBox Auto Complete", 400, 296)
    $hCombo = GUICtrlCreateCombo("", 2, 2, 396, 296)
    GUISetState()

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

    ; Add files
    _GUICtrlComboBox_BeginUpdate ($hCombo)
    _GUICtrlComboBox_AddDir ($hCombo, @WindowsDir & "\*.exe")
    _GUICtrlComboBox_EndUpdate ($hCombo)

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

    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

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

    ; Loop until user exits
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
    EndFunc ;==>Example_Internal

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

    Func Example_External()
    Local $hGUI

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

    ; Create GUI
    $hGUI = GUICreate("(External) ComboBox Auto Complete", 400, 296)
    $hCombo = _GUICtrlComboBox_Create ($hGUI, "", 2, 2, 396, 296)
    GUISetState()

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

    ; Add files
    _GUICtrlComboBox_BeginUpdate ($hCombo)
    _GUICtrlComboBox_AddDir ($hCombo, @WindowsDir & "\*.exe")
    _GUICtrlComboBox_EndUpdate ($hCombo)

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

    GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

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

    ; Loop until user exits
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
    EndFunc ;==>Example_External

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

    Func _Edit_Changed()
    _GUICtrlComboBox_AutoComplete ($hCombo)
    EndFunc ;==>_Edit_Changed

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

    Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
    Local $hWndFrom, $iIDFrom, $iCode, $hWndCombo
    If Not IsHWnd($hCombo) Then $hWndCombo = GUICtrlGetHandle($hCombo)
    $hWndFrom = $ilParam
    $iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word
    $iCode = BitShift($iwParam, 16) ; Hi Word
    Switch $hWndFrom
    Case $hCombo, $hWndCombo
    Switch $iCode
    Case $CBN_CLOSEUP ; Sent when the list box of a combo box has been closed
    _DebugPrint("$CBN_CLOSEUP" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_DBLCLK ; Sent when the user double-clicks a string in the list box of a combo box
    _DebugPrint("$CBN_DBLCLK" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_DROPDOWN ; Sent when the list box of a combo box is about to be made visible
    _DebugPrint("$CBN_DROPDOWN" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_EDITCHANGE ; Sent after the user has taken an action that may have altered the text in the edit control portion of a combo box
    _DebugPrint("$CBN_EDITCHANGE" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    _Edit_Changed()
    ; no return value
    Case $CBN_EDITUPDATE ; Sent when the edit control portion of a combo box is about to display altered text
    _DebugPrint("$CBN_EDITUPDATE" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_ERRSPACE ; Sent when a combo box cannot allocate enough memory to meet a specific request
    _DebugPrint("$CBN_ERRSPACE" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_KILLFOCUS ; Sent when a combo box loses the keyboard focus
    _DebugPrint("$CBN_KILLFOCUS" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_SELCHANGE ; Sent when the user changes the current selection in the list box of a combo box
    _DebugPrint("$CBN_SELCHANGE" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_SELENDCANCEL ; Sent when the user selects an item, but then selects another control or closes the dialog box
    _DebugPrint("$CBN_SELENDCANCEL" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_SELENDOK ; Sent when the user selects a list item, or selects an item and then closes the list
    _DebugPrint("$CBN_SELENDOK" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    Case $CBN_SETFOCUS ; Sent when a combo box receives the keyboard focus
    _DebugPrint("$CBN_SETFOCUS" & @LF & "--> hWndFrom:" & @TAB & $hWndFrom & @LF & _
    "-->IDFrom:" & @TAB & $iIDFrom & @LF & _
    "-->Code:" & @TAB & $iCode)
    ; no return value
    EndSwitch
    EndSwitch
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_COMMAND

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

    Func _DebugPrint($s_text, $line = @ScriptLineNumber)
    ConsoleWrite( _
    "!===========================================================" & @LF & _
    "+======================================================" & @LF & _
    "-->Line(" & StringFormat("%04d", $line) & "):" & @TAB & $s_text & @LF & _
    "+======================================================" & @LF)
    EndFunc ;==>_DebugPrint

    [/autoit]


    Bzw. 1. was der unterschied zwischen internal und external sein soll und was die Function WM_COMMAND bewirkt ausser das sie irgendwelche daten in die console schreibt^^

    Also das mit dem Input hab ich mir so vorgestellt wie das eig. auch mit der Combobox ist d.h. wenn man in die combobox explorer.exe schreiben will markiert er das was er vorschlägt auch gleich *geile sache*, nur ich bräuchte das ganze halt in einem Input und die Daten soll er aus einer Datei lesen

    Es geht hierbei um eine Datenbank aus den verschiedensten Namen
    Nachname Vorname1.Buchstabe
    Jede Zeile beispielsweise ein Name und wenn man dann in das Input zu schreiben beginnt sollte er auch vorschläge machen die markiert sind^^

    Omg hoffe ihr habt einigermaßen verstanden was ich will

    THX für euren Mühen schonmal :)

    //EDIT:
    Mir ist zwar eig. der Ansatz klar,
    1. muss die Datei nach dem entsprechenden, bereits eingegebenem String durchsucht werden
    2. muss der erstbeste gefundene String genommen und die Länge des strings - (minus) die länge des eingegebenen strings quasi rückwärts markiert werden
    nur wie coden??? gerade dann das mit dem markieren^^

  • GUICtrlCreateListViewItem & GUICtrlDelete

    • FireFlyer
    • 28. Februar 2008 um 19:33

    k hab ich gemacht^^
    keine warnung mehr :P THX ich lasses einfach so

    *NEVER TOUCH A RUNNING SYSTEM!!!*

    kennen wir ja glaub ich alle^^

  • GUICtrlCreateListViewItem & GUICtrlDelete

    • FireFlyer
    • 28. Februar 2008 um 19:30

    ähhm also es gibt quasi nur 2 functions:
    open_statistik ist der obere Spoiler

    und

    close_statistik ist der untere Spoiler

  • GUICtrlCreateListViewItem & GUICtrlDelete

    • FireFlyer
    • 28. Februar 2008 um 19:15

    Also ich habe mal wieder ein problem(chen) und zwar ich habe eine GUI:

    Spoiler anzeigen
    [autoit]

    Global $gui_tstatistik = GUICreate( $opts_namepgr[2]&"-Tages-Statistiken", 300, 300, 30, 30)
    $listview = GUICtrlCreateListView("Kennzeichen|Flugzeugtyp|Starts|Flugzeit", 10, 10, 280, 250)
    $closebutton = GUICtrlCreateButton("Schließen", 190, 270, 100, 20)
    GUICtrlSetOnEvent($closebutton, "close_statistik")
    ;HIER KOMMT SEHR VIEL CODE ABER IM ENDEFFEKT:
    For $e=1 To 10
    If $airs[$e] <> 0 Then
    $list[$e] = GUICtrlCreateListViewItem($file_stats[$e]&"|"&$splitted_string[$e]&"|"&$airs[$e]&"|"&$airt[$e]&":"&$airl[$e], $listview)
    EndIf
    Next
    GUISetState(@SW_SHOW, $gui_tstatistik)

    [/autoit]


    Diese Öffnet sich bei einem Button d.h. ich habe das ganze in eine Funktion geschrieben. Danach trägt er noch max. 10 LiestViewItems ein (ist ein zu langer code)
    So beim Schließen bzw. beim erneuten öffnen müssen diese ListViewItems wieder weg sein (GUICtrlDelete) da ist schon das erste Problem es werden eig. nie alle geschrieben d.h. es kann mal sein das $list[2] u. $list[4] geschrieben wurde und der Rest nicht, deshalb hab ich das eben so gelöst dass sich das GUI jedes mal neu macht. Durch die var Global geht das dann ja auch wieder mit der Funktion schließen:

    Spoiler anzeigen
    [autoit]

    Func close_statistik()
    GUISetState(@SW_HIDE, $gui_tstatistik)
    EndFunc

    [/autoit]


    Somit meckert er jedesmal rum das die var: $gui_tstatistik möglicherweise nicht deklariert ist, das ist sie natürlich schon denn es wird ja immer zuerst das GUI geöffnet

    Fazit es funktioniert so wie ich es gemacht habe aber ich bin mir zu 100% sicher das es da noch eine bessere Lösung gibt^^
    Er meckert ja lediglich in scite mit diesem Fehler rum öffnet das Programm aber trotzdem, in der Kompellierten Version merkt man davon natürlich nichts mehr ;)

    achso ja hier nochmal die "Fehlermeldungen" es geht ja trotzdem ^^

    Zitat

    C:\save\SFG-SINGEN\sfg-singen.au3(914,39) : WARNING: $gui_tstatistik: possibly used before declaration.
    GUISetState(@SW_HIDE, $gui_tstatistik)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\save\SFG-SINGEN\sfg-singen.au3(678,94) : WARNING: $gui_tstatistik: declared global in function only. Prefer top of file.
    Global $gui_tstatistik = GUICreate( $opts_namepgr[2]&"-Tages-Statistiken", 300, 300, 30, 30)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    C:\save\SFG-SINGEN\sfg-singen.au3 - 0 error(s), 2 warning(s)
    ->19:24:08 AU3Check ended.rc:1

    Alles anzeigen

    THX 4 your HELP

  • Hash & Array?

    • FireFlyer
    • 28. Februar 2008 um 18:33

    naja ich brauch das net unbedingt ^^ wollt nur wissen was für vor oder nachteile es gibt
    THX @ ALL war wieder mal ne superschnelle hilfe :D
    @mega sry hab mich verschribselt^^

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™