IniRead Frage

08/22/2009 13:19 plachta1234#1
Jedesmal wenn ich versuche einen Testlauf von meinem Login-Script zu starten kommt dieser Fehler:
Code:
ERROR: IniRead() [built-in] called with wrong number of args.
	Local $accname = IniRead("acc.ini", "Account", "Accountname")
Doch was ist daran falsch? Ich habe schon in der AutoIT-Hilfe geschaut doch die konnte mir nicht weiterhelfen.
08/22/2009 13:34 kknb#2
jaa logisch, guck dir die fehlermeldung einfach mal an, dort steht das du der funktion die falsche anzahl an argumenten übergibst.
also fehlt dir der default wert. ich glaube nicht das du richtig in die hilfe geschaut hast!

Quote:
IniRead ( "filename", "section", "key", "default" )
wenn ich hier mal die kommata zähle und mit deinem read vergleiche, fällt mir sofort auf das bei dir nen argument fehlt!
08/22/2009 13:38 plachta1234#3
Okay dankeschön mein Fehler war das ich vergessen habe "default" anzugeben
08/22/2009 14:24 buFFy!#4
Und weißt du auch was das default macht? :confused:
08/22/2009 14:55 AGWCC#5
Gib bei Default aber nur "" ein!
08/22/2009 15:25 kknb#6
warum sollte er? er kann als accnamen ja auch nen richtigen defaultwert eingeben.
08/22/2009 15:52 buFFy!#7
Würde inis sowieso 1. nicht als ini speichern und 2. encrypted. mit welchem algo er das macht is ja ihm überlassen aber ich würds auf jeden fal mit xor bearbeiten. halt wenns was wichtiges is wo 'wertvolle' accs eingetragen werden. also bei metin oder so kannst dir das sparen.
08/22/2009 16:03 AGWCC#8
Also wenn ich mich an meine, wenn auch recht kurze, AutoIt-zeit erinnere, kam bei (ein Beispiel):

Code:
IniRead("acc.ini", "Account", "Accountname", "TestIt")
immer "TestIt" raus. Auch wenns nicht im File stand (Eigentlich sollte es ja so sein, dass er "TestIt" nur hergibt, wenn "Accountname" nicht gefunden wird oder null ist). Kann natürlich sein dass das heute schon anders ist.

Aber warum nicht. Wenn er zum Bleistift einen Bot hat, der die Accountdaten des Users abfragt, und der Endbenutzder sie nicht angibt, sollte er dann seine als Default wert angeben? ;-)


Philipp
08/22/2009 16:59 kknb#9
dann hast du was falsch gemacht wenn bei dir immer der default wert rauskam. warum er da was eintragen soll? ganz einfach bei großen scripten hilft es zum beispiel bei der fehlersuche wesentlich mehr wenn ein default wert ausgegeben wird anstatt nichts.
08/22/2009 17:22 AGWCC#10
Also wie gesagt ist schon eine ganze lange weile her. Abar ist ja egal, man lernt immer dazu dass es nicht so ist bzw war xD. Muss u-coRe aber mit seiner These zustimmen.

AGWCC
08/23/2009 02:35 Rosemarie Lein#11
Quote:
Originally Posted by AGWCC View Post
Also wenn ich mich an meine, wenn auch recht kurze, AutoIt-zeit erinnere, kam bei (ein Beispiel):

Code:
IniRead("acc.ini", "Account", "Accountname", "TestIt")
immer "TestIt" raus. Auch wenns nicht im File stand (Eigentlich sollte es ja so sein, dass er "TestIt" nur hergibt, wenn "Accountname" nicht gefunden wird oder null ist). Kann natürlich sein dass das heute schon anders ist.

Aber warum nicht. Wenn er zum Bleistift einen Bot hat, der die Accountdaten des Users abfragt, und der Endbenutzder sie nicht angibt, sollte er dann seine als Default wert angeben? ;-)


Philipp
Wie sieht die ini aus, ist sie im gleichen Verzeichniss?
08/23/2009 11:29 AGWCC#12
Ich habe keine Ahnung mehr wie ich das damals alles geregelt habe. Aber ja ich glaube waren im selben Verzeichnis oder halt "@ScriptDir & "\config\settings.ini"" oder so!

Ist ja jetzt auch egal, nutze inis nicht!

Philipp
08/23/2009 13:24 in MIND#13
Quote:
Originally Posted by Rosemarie Lein View Post
Wie sieht die ini aus, ist sie im gleichen Verzeichniss?
also das verzeichnis ist ja ziemlich egal
08/23/2009 13:29 kknb#14
nein ist es nicht, wenn du zum beispiel nen wert aus nem fileopendialog in ne ini schreibst kommt das iniread und iniwrite ziemlich durcheinander, dann MUSST du beim iniread den ganzen pfad angeben.
08/23/2009 14:40 in MIND#15
klar musste den ganzen pfad angeben (davon bin ich jetzt mal ausgegangen), aber dann isses wirklich wurst wo du die ini hast