Passwort Manager | Einige Probleme.

  • Hallo Mitglieder.

    Ich habe bisher alle meine Passwörter in einer Text Datei gespeichert, da dies aber nicht wirklich sicher ist und ich AutoIt am lernen bin,
    hatte ich gestern Nacht die Idee, einen Passwort Manager zu erstellen.


    Mein erstes Problem ist, ich würde gerne alle Kategorien und Passwörter auslesen.
    Ich weiß, dass ich dies mit INIread lösen kann, jedoch würde mir damit nur 1 Passwort angezeigt werden.

    Mein zweites Problem ist, ich weiß nicht, wie ich Kategorien hinzufügen soll.
    Die Passwörter sollen mit Login gespeichert werden.

    Alles soll in einer .ini gespeichert werden.

    Dies ist mein Code:

    Spoiler anzeigen
    [autoit]

    #NoTrayIcon

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

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

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

    $PM_GUI = GUICreate("Passwort Manager", 545, 493, 192, 124)

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

    ;----Kategorien & Passwort auslesen----;
    $Group1 = GUICtrlCreateGroup("Passwort Auswahl", 8, 8, 529, 161)
    $PW = GUICtrlCreateLabel("Passwort:", 16, 112, 50, 17)
    $PW_OUT = GUICtrlCreateLabel("", 80, 112, 4, 4)
    $KAT = GUICtrlCreateCombo("Kategorie auswählen", 72, 32, 185, 25)
    $LOG = GUICtrlCreateLabel("Login:", 16, 72, 33, 17)
    $LOG_OUT = GUICtrlCreateLabel("", 80, 72, 4, 4)
    $PW_LIST = GUICtrlCreateList("", 264, 24, 265, 123)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort hinzufügen----;
    $Group2 = GUICtrlCreateGroup("Passwort hinzufügen", 8, 176, 249, 177)
    $LOGIN = GUICtrlCreateInput("", 80, 240, 161, 21)
    $PASSWORD = GUICtrlCreateInput("", 80, 272, 161, 21)
    $PW_ADD = GUICtrlCreateButton("Hinzufügen", 64, 304, 121, 33, $WS_GROUP)
    $LOGIN_LAB = GUICtrlCreateLabel("Login:", 16, 242, 33, 17)
    $PASSWORD_LAB = GUICtrlCreateLabel("Passwort:", 16, 274, 50, 17)
    $KAT_CHO = GUICtrlCreateCombo("Kategorie auswählen", 24, 200, 217, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie hinzufügen----;
    $KAT_ADDEN = GUICtrlCreateGroup("Kategorie hinzufügen", 272, 176, 265, 113)
    $KAT_NAME = GUICtrlCreateInput("", 288, 200, 233, 21)
    $KAT_ADD = GUICtrlCreateButton("Hinzufügen", 344, 240, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort löschen----;
    $PASSWORD_DELETE = GUICtrlCreateGroup("Passwort löschen", 8, 368, 249, 113)
    $PW_CH = GUICtrlCreateCombo("Passwort auswählen", 32, 392, 201, 25)
    $PW_DEL = GUICtrlCreateButton("Löschen", 64, 432, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie löschen----;
    $KAT_DELETE = GUICtrlCreateGroup("Kategorie löschen", 272, 296, 265, 113)
    $KAT_CH = GUICtrlCreateCombo("Kategorie auswählen", 304, 320, 201, 25)
    $KAT_DEL = GUICtrlCreateButton("Löschen", 344, 360, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $PW_ADD
    _PWadd ()
    Case $KAT_ADD
    _KATadd ()
    EndSwitch
    WEnd

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

    Func _PWadd()
    $readpw = GUICtrlRead($PASSWORD)
    $readlog = GUICtrlRead($LOGIN)
    $readkat = GUICtrlRead($KAT_CHO)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat, $readlog, $readpw)
    EndFunc ;==>_PWadd

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

    Func _KATadd()
    $readkat2 = GUICtrlRead($KAT_NAME)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat2, "", "")
    EndFunc ;==>_KATadd

    [/autoit]

    Könntet ihr mir bei diesem Projekt helfen?

    Mit freundlichen Grüßen
    Daisuke

    4 Mal editiert, zuletzt von Kazuto (9. März 2011 um 23:37)

  • Schick und das Script mit der INIRead Funktion, dann können wir dir besser helfen, denn nur die Objects bringen nchts.

  • Hier mal ein Anfang:

    Spoiler anzeigen
    [autoit]


    #NoTrayIcon

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

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

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

    $PM_GUI = GUICreate("Passwort Manager", 545, 450, 192, 124)
    $Group1 = GUICtrlCreateGroup("Passwort Auswahl", 8, 8, 529, 161)
    $PW = GUICtrlCreateLabel("Passwort:", 16, 112, 50, 17)
    $PW_OUT = GUICtrlCreateLabel("", 80, 112, 172, 20)
    $KAT = GUICtrlCreateCombo("Kategorie auswählen", 72, 32, 185, 25)
    $LOG = GUICtrlCreateLabel("Login:", 16, 72, 33, 17)
    $LOG_OUT = GUICtrlCreateLabel("", 80, 72, 172, 20)
    $PW_LIST = GUICtrlCreateList("", 264, 24, 265, 123)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group2 = GUICtrlCreateGroup("Passwort hinzufügen", 8, 176, 249, 137)
    $LOGIN = GUICtrlCreateInput("", 80, 200, 161, 21)
    $PASSWORD = GUICtrlCreateInput("", 80, 232, 161, 21)
    $PW_ADD = GUICtrlCreateButton("Hinzufügen", 64, 264, 121, 33, $WS_GROUP)
    $LOGIN_LAB = GUICtrlCreateLabel("Login:", 16, 202, 33, 17)
    $PASSWORD_LAB = GUICtrlCreateLabel("Passwort:", 16, 234, 50, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group3 = GUICtrlCreateGroup("Kategorie hinzufügen", 272, 176, 265, 137)
    $KAT_NAME = GUICtrlCreateInput("", 288, 200, 233, 21)
    $KAT_ADD = GUICtrlCreateButton("Hinzufügen", 344, 264, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group4 = GUICtrlCreateGroup("Passwort löschen", 8, 328, 249, 113)
    $PW_CH = GUICtrlCreateCombo("Passwort auswählen", 32, 352, 201, 25)
    $PW_DEL = GUICtrlCreateButton("Löschen", 64, 392, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group5 = GUICtrlCreateGroup("Kategorie löschen", 272, 328, 265, 113)
    $KAT_CH = GUICtrlCreateCombo("Kategorie auswählen", 304, 352, 201, 25)
    $KAT_DEL = GUICtrlCreateButton("Löschen", 344, 392, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $PW_ADD
    $readpw=GUICtrlRead($PASSWORD)
    $readlog=GUICtrlRead($LOGIN)
    IniWrite(@ScriptDir & "\passwords.ini","PasswortName" ,$readlog , $readpw)

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

    EndSwitch
    WEnd

    [/autoit]
  • Danke Sparky, ich hatte gerade das Problem, dass mir in der Ini nur Zahlen angegeben wurden.

    ~EDIT~

    Die schreib Funktionen habe ich durch

    [autoit]

    Func _PWadd()
    $readpw = GUICtrlRead($PASSWORD)
    $readlog = GUICtrlRead($LOGIN)
    $readkat = GUICtrlRead($KAT_CHO)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat, $readlog, $readpw)
    EndFunc ;==>_PWadd

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

    Func _KATadd()
    $readkat2 = GUICtrlRead($KAT_NAME)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat2, "", "")
    EndFunc ;==>_KATadd

    [/autoit]

    gelöst.

    Jedoch fällt mir kein Weg ein, Ini Read zu verwenden, um alle Kategorien in der Combobox "$KAT" und die Passwörter bzw. Logins in der Listbox "$PW_LIST" anzuzeigen.

    Einmal editiert, zuletzt von Kazuto (3. März 2011 um 19:33)

  • [autoit]


    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include<array.au3>
    $PM_GUI = GUICreate("Passwort Manager", 545, 450, 192, 124)
    $Group1 = GUICtrlCreateGroup("Passwort Auswahl", 8, 8, 529, 161)
    $PW = GUICtrlCreateLabel("Passwort:", 16, 112, 50, 17)
    $PW_OUT = GUICtrlCreateLabel("", 80, 112, 172, 20)
    If not fileexists(@scriptdir&"\data.ini") then
    $KAT = GUICtrlCreateCombo("Kategorie", 72, 32, 185, 25, $cbs_dropdownlist)
    $KAT_CH = GUICtrlCreateCombo("Kategorie ", 304, 352, 201, 25)
    else
    $sectionnames= Inireadsectionnames(@scriptdir&"\data.ini")
    $KAT = GUICtrlCreateCombo("", 72, 32, 185, 25, $cbs_dropdownlist)
    $KAT_CH = GUICtrlCreateCombo(" ", 304, 352, 201, 25)
    for $i= 1 to _arraymaxindex($sectionnames)
    guictrlsetdata($KAT, $sectionnames[$i], 1)
    guictrlsetdata($kat_ch, $sectionnames[$i], 1)
    next
    endif
    $LOG = GUICtrlCreateLabel("Login:", 16, 72, 33, 17)
    $LOG_OUT = GUICtrlCreateLabel("", 80, 72, 172, 20)
    $PW_LIST = GUICtrlCreateList("", 264, 24, 265, 123)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group2 = GUICtrlCreateGroup("Passwort hinzufügen", 8, 176, 249, 137)
    $LOGIN = GUICtrlCreateInput("", 80, 200, 161, 21)
    $PASSWORD = GUICtrlCreateInput("", 80, 232, 161, 21)
    $PW_ADD = GUICtrlCreateButton("Hinzufügen", 64, 264, 121, 33, $WS_GROUP)
    $LOGIN_LAB = GUICtrlCreateLabel("Login:", 16, 202, 33, 17)
    $PASSWORD_LAB = GUICtrlCreateLabel("Passwort:", 16, 234, 50, 17)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group3 = GUICtrlCreateGroup("Kategorie hinzufügen", 272, 176, 265, 137)
    $KAT_NAME = GUICtrlCreateInput("", 288, 200, 233, 21)
    $KAT_ADD = GUICtrlCreateButton("Hinzufügen", 344, 264, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group4 = GUICtrlCreateGroup("Passwort löschen", 8, 328, 249, 113)
    $PW_CH = GUICtrlCreateCombo("Passwort auswählen", 32, 352, 201, 25)
    $PW_DEL = GUICtrlCreateButton("Löschen", 64, 392, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    $Group5 = GUICtrlCreateGroup("Kategorie löschen", 272, 328, 265, 113)
    $KAT_DEL = GUICtrlCreateButton("Löschen", 344, 392, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    case $kat_del
    Inidelete(@scriptdir&"\data.ini", guictrlread($kat_ch))
    $sectionnames= Inireadsectionnames(@scriptdir&"\data.ini")
    guictrlsetdata($kat, "")
    guictrlsetdata($kat_ch, "")
    for $i= 1 to _arraymaxindex($sectionnames)
    guictrlsetdata($KAT, $sectionnames[$i], 1)
    guictrlsetdata($kat_ch, $sectionnames[$i], 1)
    next
    case $KAT_add
    If guictrlread($kat_name)<> "" then
    Iniwrite(@scriptdir&"\data.ini", guictrlread($kat_name), "", "")
    $sectionnames= Inireadsectionnames(@scriptdir&"\data.ini")
    guictrlsetdata($kat, "")
    guictrlsetdata($kat_ch, "")
    for $i= 1 to _arraymaxindex($sectionnames)
    guictrlsetdata($KAT, $sectionnames[$i] ,1)
    guictrlsetdata($kat_ch, $sectionnames[$i], 1)
    next
    endif
    case $kat
    $keysvalues= Inireadsection(@scriptdir&"\data.ini", guictrlread($kat))
    _arraydisplay($keysvalues)
    for $i= 1 to _arraymaxindex($keysvalues)
    guictrlsetdata($pw_list, $keysvalues[$i][0] &":"& $keysvalues[$i][1])
    next
    EndSwitch
    WEnd

    [/autoit]


    Das wird dir sicherlich weiterhelfen. Aber wie wird entschieden, in welche Kategorie das neue Passwort kommt?
    Das is mir bei deinem Skript bissel unklar

    [align=center]Meine Werke mit der Irrlicht Engine
    AutoIt Picture Viewer Dreidimensionaler Bildbetrachter
    Mr Bubble 3D Neue Interpretation des Flashklassikers Bubble trouble

  • Jedoch fällt mir kein Weg ein, Ini Read zu verwenden, um alle Kategorien in der Combobox "$KAT" und die Passwörter bzw. Logins in der Listbox "$PW_LIST" anzuzeigen.

    [autoit]

    case $kat
    $keysvalues= Inireadsection(@scriptdir&"\passwords.ini", guictrlread($kat))

    for $i= 1 to _arraymaxindex($keysvalues)
    guictrlsetdata($pw_list, $keysvalues[$i][0] &":"& $keysvalues[$i][1])
    next

    [/autoit]

    [align=center]Meine Werke mit der Irrlicht Engine
    AutoIt Picture Viewer Dreidimensionaler Bildbetrachter
    Mr Bubble 3D Neue Interpretation des Flashklassikers Bubble trouble

  • Hallo Mitglieder.

    Ich habe bisher alle meine Passwörter in einer Text Datei gespeichert, da dies aber nicht wirklich sicher ist und ich AutoIt am lernen bin,
    hatte ich gestern Nacht die Idee, einen Passwort Manager zu erstellen.

    Dann haste dir hoffentlich auch schon Gedanken über eine Verschlüsselung und ein Master-Login für dein Programm gemacht. Denn eine ini Datei ist nicht wirklich sicherer als eine Textdatei.

  • Spoiler anzeigen
    [autoit]

    #NoTrayIcon

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

    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include<array.au3>

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

    $PM_GUI = GUICreate("Passwort Manager", 545, 493, 192, 124)

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

    ;----Kategorien & Passwort auslesen----;
    $Group1 = GUICtrlCreateGroup("Passwort Auswahl", 8, 8, 529, 161)
    $PW = GUICtrlCreateLabel("Passwort:", 16, 112, 50, 17)
    $PW_OUT = GUICtrlCreateLabel("", 80, 112, 4, 4)
    $KAT = GUICtrlCreateCombo("Kategorie auswählen", 72, 32, 185, 25)
    $LOG = GUICtrlCreateLabel("Login:", 16, 72, 33, 17)
    $LOG_OUT = GUICtrlCreateLabel("", 80, 72, 4, 4)
    $PW_LIST = GUICtrlCreateList("", 264, 24, 265, 123)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort hinzufügen----;
    $Group2 = GUICtrlCreateGroup("Passwort hinzufügen", 8, 176, 249, 177)
    $LOGIN = GUICtrlCreateInput("", 80, 240, 161, 21)
    $PASSWORD = GUICtrlCreateInput("", 80, 272, 161, 21)
    $PW_ADD = GUICtrlCreateButton("Hinzufügen", 64, 304, 121, 33, $WS_GROUP)
    $LOGIN_LAB = GUICtrlCreateLabel("Login:", 16, 242, 33, 17)
    $PASSWORD_LAB = GUICtrlCreateLabel("Passwort:", 16, 274, 50, 17)
    $KAT_CHO = GUICtrlCreateCombo("Kategorie auswählen", 24, 200, 217, 25)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie hinzufügen----;
    $KAT_ADDEN = GUICtrlCreateGroup("Kategorie hinzufügen", 272, 176, 265, 113)
    $KAT_NAME = GUICtrlCreateInput("", 288, 200, 233, 21)
    $KAT_ADD = GUICtrlCreateButton("Hinzufügen", 344, 240, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort löschen----;
    $PASSWORD_DELETE = GUICtrlCreateGroup("Passwort löschen", 8, 368, 249, 113)
    $PW_CH = GUICtrlCreateCombo("Passwort auswählen", 32, 392, 201, 25)
    $PW_DEL = GUICtrlCreateButton("Löschen", 64, 432, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie löschen----;
    $KAT_DELETE = GUICtrlCreateGroup("Kategorie löschen", 272, 296, 265, 113)
    $KAT_CH = GUICtrlCreateCombo("Kategorie auswählen", 304, 320, 201, 25)
    $KAT_DEL = GUICtrlCreateButton("Löschen", 344, 360, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $PW_ADD
    _PWadd()
    Case $KAT_ADD
    _KATadd()
    Case $KAT
    $keysvalues = IniReadSection(@ScriptDir & "\passwords.ini", GUICtrlRead($KAT))
    For $i = 1 To _ArrayMaxIndex($keysvalues)
    GUICtrlSetData($PW_LIST, $keysvalues[$i][0] & ":" & $keysvalues[$i][1])
    Next
    EndSwitch
    WEnd

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

    Func _PWadd()
    $readpw = GUICtrlRead($PASSWORD)
    $readlog = GUICtrlRead($LOGIN)
    $readkat = GUICtrlRead($KAT_CHO)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat, $readlog, $readpw)
    EndFunc ;==>_PWadd

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

    Func _KATadd()
    $readkat2 = GUICtrlRead($KAT_NAME)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat2, "", "")
    EndFunc ;==>_KATadd

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

    Func _PWdelete()
    EndFunc

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

    Func _KATdelete()
    EndFunc

    [/autoit]
  • Leute hier gehts nicht darum ob es das Programm welches DaisukeHideki coden möchte schon gibt (auch wenn besser, sicherer ,... ist)
    weil sonst könnte man gleich 30% der hier geposteten Scripte (wenn nicht mehr) löschen und sagen "Das gibts doch eh schon..."
    :)

    MfG hellboy

    [autoit]

    Do
    _help($user)
    Until $questions = 0

    [/autoit]

    Meine Werke:
    Ste`s Web-Radio

  • [autoit]

    #NoTrayIcon

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

    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include<array.au3>

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

    $PM_GUI = GUICreate("Passwort Manager", 545, 493, 192, 124)

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

    ;----Kategorien & Passwort auslesen----;
    $Group1 = GUICtrlCreateGroup("Passwort Auswahl", 8, 8, 529, 161)
    $PW = GUICtrlCreateLabel("Passwort:", 16, 112, 50, 17)
    $PW_OUT = GUICtrlCreateLabel("", 80, 112, 4, 4)
    If not fileexists(@scriptdir&"\passwords.ini") then
    $KAT = GUICtrlCreateCombo("Kategorie", 72, 32, 185, 25, $cbs_dropdownlist)
    $KAT_CH = GUICtrlCreateCombo("Kategorie ", 304, 352, 201, 25)
    else
    $sectionnames= Inireadsectionnames(@scriptdir&"\passwords.ini")
    $KAT = GUICtrlCreateCombo("", 72, 32, 185, 25, $cbs_dropdownlist)
    $KAT_CH = GUICtrlCreateCombo(" ", 304, 352, 201, 25)
    $KAT_CHO = GUICtrlCreateCombo("", 24, 200, 217, 25)
    _arraydisplay($sectionnames)

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

    for $i= 1 to $sectionnames[0]
    guictrlsetdata($KAT, $sectionnames[$i], 0)
    guictrlsetdata($kat_ch, $sectionnames[$i], 0)
    guictrlsetdata($kat_cho, $sectionnames[$i],0)
    next
    endif

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

    $LOG = GUICtrlCreateLabel("Login:", 16, 72, 33, 17)
    $LOG_OUT = GUICtrlCreateLabel("", 80, 72, 4, 4)
    $PW_LIST = GUICtrlCreateList("", 264, 24, 265, 123)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort hinzufügen----;
    $Group2 = GUICtrlCreateGroup("Passwort hinzufügen", 8, 176, 249, 177)
    $LOGIN = GUICtrlCreateInput("", 80, 240, 161, 21)
    $PASSWORD = GUICtrlCreateInput("", 80, 272, 161, 21)
    $PW_ADD = GUICtrlCreateButton("Hinzufügen", 64, 304, 121, 33, $WS_GROUP)
    $LOGIN_LAB = GUICtrlCreateLabel("Login:", 16, 242, 33, 17)
    $PASSWORD_LAB = GUICtrlCreateLabel("Passwort:", 16, 274, 50, 17)

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

    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie hinzufügen----;
    $KAT_ADDEN = GUICtrlCreateGroup("Kategorie hinzufügen", 272, 176, 265, 113)
    $KAT_NAME = GUICtrlCreateInput("", 288, 200, 233, 21)
    $KAT_ADD = GUICtrlCreateButton("Hinzufügen", 344, 240, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Passwort löschen----;
    $PASSWORD_DELETE = GUICtrlCreateGroup("Passwort löschen", 8, 368, 249, 113)
    $PW_CH = GUICtrlCreateCombo("Passwort auswählen", 32, 392, 201, 25)
    $PW_DEL = GUICtrlCreateButton("Löschen", 64, 432, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)

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

    ;----Kategorie löschen----;
    $KAT_DELETE = GUICtrlCreateGroup("Kategorie löschen", 272, 296, 265, 113)

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

    $KAT_DEL = GUICtrlCreateButton("Löschen", 344, 373, 121, 33, $WS_GROUP)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $PW_ADD
    _PWadd()
    Case $KAT_ADD
    _KATadd()
    Case $KAT_del
    _katdelete()
    case $kat
    $keysvalues = IniReadSection(@ScriptDir & "\passwords.ini", GUICtrlRead($KAT))
    _arraydisplay($keysvalues)
    For $i = 1 To $keysvalues[0][0]
    GUICtrlSetData($PW_LIST, $keysvalues[$i][0] & ":" & $keysvalues[$i][1])
    Next
    case $pw_del
    _pwdelete()

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

    EndSwitch
    WEnd

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

    Func _PWadd()
    $readpw = GUICtrlRead($PASSWORD)
    $readlog = GUICtrlRead($LOGIN)
    $readkat = GUICtrlRead($KAT_CHO)
    IniWrite(@ScriptDir & "\passwords.ini", $readkat, $readlog, $readpw)
    EndFunc ;==>_PWadd

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

    Func _KATadd()
    If guictrlread($kat_name)<> "" then
    IniWrite(@ScriptDir & "\passwords.ini", guictrlread($kat_name) , "", "")
    $sectionnames= Inireadsectionnames(@scriptdir&"\passwords.ini")

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

    for $i=1 to $sectionnames[0]
    guictrlsetdata($kat_ch, $sectionnames[$i],0)
    guictrlsetdata($KAT_CHo, $sectionnames[$i],0)
    guictrlsetdata($kat, $sectionnames[$i],0)
    next

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

    endif
    EndFunc ;==>_KATadd

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

    Func _PWdelete()

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

    EndFunc

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

    Func _KATdelete()

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

    inidelete(@scriptdir&"\passwords.ini", guictrlread($kat_ch))
    Msgbox(0, "", guictrlread($kat_ch))
    $sectionnames= Inireadsectionnames(@scriptdir&"\passwords.ini")
    _arraydisplay($sectionnames)
    guictrlsetdata($kat, "")
    guictrlsetdata($kat_cho, "")
    guictrlsetdata($kat_ch, "")
    for $i=1 to $sectionnames[0]
    guictrlsetdata($kat_ch, $sectionnames[$i],0)
    guictrlsetdata($KAT_CHO, $sectionnames[$i],0)
    guictrlsetdata($kat, $sectionnames[$i],0)
    next
    EndFunc

    [/autoit]


    Leute es geht nicht darum, das Rad neu zu erfinden. Wenn man was selber nachskriptet, kann man sein eigenes Erfolgserlebnis haben :rofl:
    Jetzt funktioniert alles.
    Du musst noch die Funktion um Passwörter zu löschen, einbauen.
    Die Combobox muss mit allen Passwörter in der Ini, mit allen Passwörtern aus allen Kategorien gefüllt werden.
    Da kannst du zum einen Inireadsectionnames, zum anderen Inireadsection verwenden.
    Die beiden kombinierst du mit 2 For..next schleifen. Um Passwörter zu löschen, verwendest du Inidelete(..).. Die Combobox muss dann natürlich aktualisiert werden...
    Gruß, Billie

    [align=center]Meine Werke mit der Irrlicht Engine
    AutoIt Picture Viewer Dreidimensionaler Bildbetrachter
    Mr Bubble 3D Neue Interpretation des Flashklassikers Bubble trouble