Wenn dein Key immer 1-2-3-4-5-6-7 ist also:
[Werte]
0=6
1=
2=
3=
4=
5=
6=
7=
Dann solltest du mal in der 0 die größe der Ini Einträge reinmachen.
Zu deinem Problem:
Code:
#Region
$GUI = GUICreate("Test", 149, 95, 192, 124)
$Input = GUICtrlCreateInput("", 8, 16, 121, 21)
$BtnAdd = GUICtrlCreateButton("Hinzufügen", 24, 48, 75, 25)
GUISetState()
#EndRegion
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case -3
Exit
Case $BtnAdd
_Add()
EndSwitch
WEnd
Func _Add()
$rtn = 0
$Lenght = IniRead("ini.ini" , "Werte" , "0" , "") ;Liest in der Ini 0= aus( Da sollen die größe der Einträge stehen)
For $i = 1 To $Lenght;Geht von 1 zu der gelessen Länge
If IniRead("ini.ini" , "Werte" , $i , "") = GUICtrlRead($Input) Then ;Vergleicht die Werte
$rtn = 1;Setzt return auf 1 wenn der Wert vorhanden ist
ExitLoop;Beendet die For-Schleife
EndIf
Next
If $rtn = 1 Then;Wenn return auf 1 ist Wert schon gefunden
MsgBox(64 , "Info" , "Wert schon gefunden");Gibt eine MessageBox aus
Return 0;Beendet die Funktion
ElseIf $rtn = 0 Then;Wenn return auf 0 ist Wert nicht gefunden
IniWrite("ini.ini" , "Werte" , "0" , $Lenght +1);Eintrag wird hinzgefügt.Ini wird erweitert.
IniWrite("ini.ini" , "Werte" , $Lenght +1 , GUICtrlRead($Input));Fügt den Eintrag hinzu.
MsgBox(64 , "Info" , "Wert erfolgreich hinzugefügt!");Gibt eine MessageBox aus
EndIf
EndFunc