Hallo,
Weiß einer wie ich mit Inireadsection nur den letzten Eintrag llesen kann?
Hallo,
Weiß einer wie ich mit Inireadsection nur den letzten Eintrag llesen kann?
Da gibt es per Defintion keine Ordnung :).
peethebee
Also hier z.b:
[autoit]$var = IniReadSection("settings.ini","Settings")
[/autoit][autoit][/autoit][autoit]For $i = 1 To $var[0][0]
_GUICtrlComboBox_AddString($Sender1, $var[$i][1])
Next
Es liest ja alle Einträge Unter "Settings". So aber der soll immer nur den letzten lesen.
Also hier:
Ich weiß schon, was du meinst ;).
Aber die Einträge haben keine Reihenfolge. Du kannst sie tauschen wie du willst. Du kannst alle Keys auslesen und dann intern sortieren, aber wirklich sauber wird das wohl nie... Oder du kannst die Keynamen so wählen, dass man sie sortieren kann: wert01=asdj, wert02=asjdh, wert03=qada usw.
peethebee
Na gut, wenn Du es benötigst, zwei vollkommen sinnfreie UDFs:
MsgBox(64, "_IniReadLastSection...", _IniReadLastSectionKey(@ScriptDir & "\settings.ini", "Settings") & @CRLF & _
_IniReadLastSectionValue(@ScriptDir & "\settings.ini", "Settings"))
Func _IniReadLastSectionKey(Const $S_FILE, Const $S_SECTION)
Local Const $AS_INI = IniReadSection($S_FILE, $S_SECTION)
If @error Then Return SetError(@error, 0, 0)
Return $AS_INI[$AS_INI[0][0]][0]
EndFunc ;==>_IniReadLastSectionKey
Func _IniReadLastSectionValue(Const $S_FILE, Const $S_SECTION)
Local Const $AS_INI = IniReadSection($S_FILE, $S_SECTION)
If @error Then Return SetError(@error, 0, 0)
Return $AS_INI[$AS_INI[0][0]][1]
EndFunc ;==>_IniReadLastSectionValue
Dankeschön
gibst da noch eine UDF zu Ini Dateien?
Wie? "Gibst da noch eine?" Formuliere die Frage... Es gibt unzählige UDFs zu INI-Dateien, die beiden oben habe ich flugs nach Deiner Fragestellung erstellt. Schau mal im englischen Forum, da gab es glaub ich sogar mal eine ganze Library dazu!
im Forum finde ich aber fast nichts dazu. Kannst du mir den Link geben?
Die Frage ist, was du erreichen willst
Das kannst du doch mit einer For-Schleife locker selbst machen :).
peethebee
Probiers mal mit dem Skript
$var = IniReadSection(@ScriptDir & "\file.ini", "Beispiel")
If @error Then
MsgBox(4096, "", "Error occurred, probably no INI file.")
Else
MsgBox(4096, "", "Key: " & $var[$var[0][0]][0] & @CRLF & "Value: " & $var[$var[0][0]][1])
EndIf
Ein bisschen Hilfe lesen und schon ist man einen Schritt weiter
Wie mache ich dann die Funktion inireadvalue und dann inideletevalue?
inireadvalue: Hier liest er den entsprechenden key aus.
inideletevalue: Hier löscht es nur anhand des Wertes.
geht das?
Es gibt IniRead & IniDelete! Was möchtest du genau machen? Bitte mehr Infos
das brauch ich für meinen script. Kann mir jemand weiterhelfen?
In der CHM Hilfedatei stehen doch zu jeder Funktion ein Beispiel. Übernehmen abändern und nen bischen basteln. Tips waren doch genug da und deine Frage kann ich nur mit ja beantworten.
MfG
Der_Doc
könntest du mir den link für die udfs im englischen forum geben?
Wieso Link UDF´s englisches Forum??????
Unter deiner Autoitinstallation gibt es ne Autoit.chm oder so da stehen alle Autoitfunktionen mir Erklärung und Beispielen drin.
Tip: Wenn du den Editor SciTE benutzt F1 drücken und die CHM Datei wird geöffnet.
Courser aus eine Funktion F1 und du springst genau zu der Funktion in der Hilfe.
MfG
Der_Doc