Ich ab mal ne frage; wie mach ich das wenn zwei Sachen, einmal aus einer Inputbox und einmal aus einer ini-datei nicht übereinstimmen dann eine neue Zeile in der ini angelegt wird(mit einem anderen Namen?)
if not guictrlread($input5where)=IniRead(@WindowsDir&"\Teamspeak.ini", "Join", "Installpath", "") Then for $i=0 to 1 IniWrite(@WindowsDir&"\Teamspeak.ini", "Join", "Installpath"&+1, GUICtrlRead($Input5where)) next Else IniWrite(@WindowsDir&"\Teamspeak.ini", "Join", "Installpath", GUICtrlRead($Input5where)) endif
Mein Code sollte eigentlich machen: 1. Wenn ein neuer Pfad existiert, der noch nicht gespeichert wurde(in der ini), dann einen anlegen. 2. Wenn mehrere dazukommen und schon einer existiert und der nicht mit dem in $input5where übereinstimmt eine neue zeile machen("installpath2" z.B)
du müsstest dir wenn schon eine eigene sektion anlegen für den install path.
diese kannst du dann komplett per IniReadSection einlesen. dann in einer for-schleife jedes element mit dem input vergleichen. im falle keines treffers dann ubound vom eingelesenen array bestimmen und ein neues element hinzufügen.
Edit
kleines beispiel:
Code:
GUICreate('blah', 200, 70)
GUISetState()
$input = GUICtrlCreateInput('',10, 10, 180, 20)
$check = GUICtrlCreateButton('check', 10, 40, 180, 20)
While 1
Switch GUIGetMsg()
Case -3
Exit
Case $check
$found = False
$ini = IniReadSection('blah.ini', 'blubb')
If IsArray($ini) Then
For $i=1 To $ini[0][0]
If $ini[$i][1] = GUICtrlRead($input) Then $found = True
Next
If Not $found Then
IniWrite('blah.ini', 'blubb', 'key'&$ini[0][0]+1, GUICtrlRead($input))
MsgBox(0, 'info', GUICtrlRead($input)&' was added to the ini')
Else
MsgBox(0, 'info', GUICtrlRead($input)&' was found in the ini')
EndIf
Else
IniWrite('blah.ini', 'blubb', 'key1', GUICtrlRead($input))
MsgBox(0, 'info', GUICtrlRead($input)&' was added to the ini')
EndIf
EndSwitch
WEnd
du müsstest dir wenn schon eine eigene sektion anlegen für den install path.
diese kannst du dann komplett per IniReadSection einlesen. dann in einer for-schleife jedes element mit dem input vergleichen. im falle keines treffers dann ubound vom eingelesenen array bestimmen und ein neues element hinzufügen.
GUICreate('blah', 200, 70)
GUISetState()
$input = GUICtrlCreateInput('',10, 10, 180, 20)
$check = GUICtrlCreateButton('check', 10, 40, 180, 20)
While 1
Switch GUIGetMsg()
Case -3
Exit
Case $check
$found = False
$ini = IniReadSection('blah.ini', 'blubb')
If IsArray($ini) Then
For $i=1 To $ini[0][0]
If $ini[$i][1] = GUICtrlRead($input) Then $found = True
Next
If Not $found Then
IniWrite('blah.ini', 'blubb', 'key'&$ini[0][0]+1, GUICtrlRead($input))
MsgBox(0, 'info', GUICtrlRead($input)&' was added to the ini')
Else
MsgBox(0, 'info', GUICtrlRead($input)&' was found in the ini')
EndIf
Else
IniWrite('blah.ini', 'blubb', 'key1', GUICtrlRead($input))
MsgBox(0, 'info', GUICtrlRead($input)&' was added to the ini')
EndIf
EndSwitch
WEnd
und wie kann ich das gespeicherte wieder aufrufen so das es in einem dropdown menü erscheint? weil es ist dann ja mit 1,2,3,4,5 undso vershen und ich kann das nicht auslesen, auchm it ner for-schleife aber wie?
While Schleifen Problem 12/31/2010 - AutoIt - 24 Replies Hi Com.,
ich habe einen Fritzbox ip changer geschrieben.
Alles klappt wunderbar, nur macht mir die while schleife zu schaffen.
Hier mein Script.
#include <INet.au3>
Auto-Schleifen [Problem] 06/23/2010 - Off Topic - 10 Replies Hallo,
und zwar brauche ich Informationen über das Schleifen.
Am besten wäre folgendes:
Woher kommt das Schleifen?
Wie schleift man richtig?
Iniwrite Problem 05/02/2010 - AutoIt - 9 Replies Hey Leute,
haenge grad am Problem fest,das nachdem ich auf den Save Button gedrueckt habe,er nicht die Ini erstellt.
Er erstellt es aber,wenn ich es per Hand eintippe,dann funktioniert alles normal.
Wenn ich aber per Fileopendialog das reinfuege passiert nix
Wer Ahnung warum?
AutoIt - Frage/Problem bei den Schleifen!! 04/05/2010 - AutoIt - 6 Replies Nabend,
ich hätte da mal eine kleine Frage zum unterbrechen von Endlosschleifen.
Und nein, damit meine ich nicht einfach den Befehl "Exitloop"!
Also, ich werde mal anhand eines kleinen Test-Scripts versuchen, meine Frage zu erklären:
#include <GUIConstants.au3>
#Region ### START Koda GUI section ### Form=
Exitloop Problem mit mehreren Schleifen 10/21/2009 - AutoIt - 5 Replies Abend !
und zwar sieht mein Problem wie folgt aus:
While 1=1
(das script)
If...Then
-hier ist das problem: ich möchte das das programm die while schleife sozusagen pausiert
-dann das was gemacht werden soll