INI File & Windows Registry
Moderator: Moderatoren
- satmax
- 1000 working lines a day
- Beiträge: 831
- Registriert: Do, 02. Dez 2010 19:34
- Wohnort: Biberbach in Österreich
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
INI File & Windows Registry
Ich finde in XBase keine Funktionen zum lesen und schreiben von INI-Files beziehungsweise lesen und schreiben in die Windows Registry.
Gibt es da nichts oder finde ich es nur wieder mal nicht?
Gruß
Markus
Gibt es da nichts oder finde ich es nur wieder mal nicht?
Gruß
Markus
Gruß
Markus
Markus
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
In der Wissensbasis habe ich für INI Dateien (eigentlich veraltet, aber ich bevorzuge die immer noch) Funktionen hinterlegt.
www.xbaseforum.de/viewtopic.php?f=16&t=3705
Es gibt auch eine REG Klasse und Beispiele zur Registry, aber wo fällt mir jetzt nicht ein.
Wie immer erst mal bei Pablo nachsehen ob er nicht sowas hat
www.xbaseforum.de/viewtopic.php?f=16&t=3705
Es gibt auch eine REG Klasse und Beispiele zur Registry, aber wo fällt mir jetzt nicht ein.
Wie immer erst mal bei Pablo nachsehen ob er nicht sowas hat
Gruß
Hubert
Hubert
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2824
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 95 Mal
- Danksagung erhalten: 13 Mal
Re: INI File & Windows Registry
Hallo, Markus -
Thomas Braun hat dazu mal eine Registry-Klasse erstellt, die Du von seiner Seite herunterladen kannst:
http://www.software-braun.de/
bzw.
http://www.software-braun.de/dl/regclass.zip
Thomas Braun hat dazu mal eine Registry-Klasse erstellt, die Du von seiner Seite herunterladen kannst:
http://www.software-braun.de/
bzw.
http://www.software-braun.de/dl/regclass.zip
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- Werner_Bayern
- Der Entwickler von "Deep Thought"
- Beiträge: 2121
- Registriert: Sa, 30. Jan 2010 22:58
- Wohnort: Niederbayern
- Hat sich bedankt: 30 Mal
- Danksagung erhalten: 72 Mal
Re: INI File & Windows Registry
Die aber einige Fehler hat, siehe die versch. Beiträge hierzu.georg hat geschrieben:Thomas Braun hat dazu mal eine Registry-Klasse erstellt, die Du von seiner Seite herunterladen kannst:
es grüßt
Werner
<when the music is over, turn off the lights!>
Werner
<when the music is over, turn off the lights!>
- satmax
- 1000 working lines a day
- Beiträge: 831
- Registriert: Do, 02. Dez 2010 19:34
- Wohnort: Biberbach in Österreich
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
Danke für den Link. Ich verwende nun Deine Funktionen und Sie arbeiten bisher einwandfrei!brandelh hat geschrieben:In der Wissensbasis habe ich für INI Dateien (eigentlich veraltet, aber ich bevorzuge die immer noch) Funktionen hinterlegt.
http://www.xbaseforum.de/viewtopic.php?f=16&t=3705
Es gibt auch eine REG Klasse und Beispiele zur Registry, aber wo fällt mir jetzt nicht ein.
Wie immer erst mal bei Pablo nachsehen ob er nicht sowas hat
Gruß
Markus
Gruß
Markus
Markus
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: INI File & Windows Registry
wenn es um das bearbeiten von "vielen" INI Files angeht empfehle ich IniEdit.exe von Phil Ide
da XbpTreeView() scheinbar nicht Unicode fähig ist (chinesische Zeichen) habe ich eine "native" DXE_TreeView() Version wenn jemand so was benötigt.Application: IniEdit.exe
Author: Phil Ide
Copyright: Phil Ide 2003, All Rights Reserved
Additional Code:
Program: TINIFILE
Author: Matt Hamilton (Corrections to ':ReadString' by Terry Wolfe)
( Down loaded from TheOasis )
Copyright: Released to Public domain by Original Author Matt Hamilton
Corrections to ':ReadString' released to public domain
by Terry Wolfe of Service Education, Inc.
Date: 11/22/99
Purpose: A Class to handle the .INI files
==========================================================================
IniEdit is written chiefly as an example of how to make an XbpTreeView
co-operate with an MLE and an SLE (and the MLE co-operate with the SLE
and the XbpTreeView etc.).
For another example, please see Folder Browser, also available from my
site. http://www.idep.org.uk/xbse/foldbrow.zip
You can simply run IniEdit, in which case it will prompt you for an
ini file to edit, else you can pass the filename on the command line.
If you use the command line option, then you must pass the extension.
By default, Windows expects ini files to be in the %windir% directory
unless you supply a full path. IniEdit however, always checks the
current directory, and only falls back on %windir% if the file is not
found.
If the file is not found (and if no path is supplied and it is not in
%windir%), then IniEdit will simply quit without notification.
You can use the treeview to browse the entire file. If you highlight
a section, then the entire section appears within the MLE.
You can navigate within a section using either the treeview or the MLE -
to use the MLE, simply click on a line containing a value.
To edit a value, click on the SLE, type the new value and press the
enter key. The ini file is updated immediately, and the MLE will reflect
the change immediately too.
To delete either a key or a section, highlight it in the treeview and
right-click to bring up a context menu.
The 'Cancel' button will restore the original file and then quit the
application.
Regards,
--
Phil Ide
http://www.idep.org.uk/xbase
gruss by OHR
Jimmy
Jimmy
- satmax
- 1000 working lines a day
- Beiträge: 831
- Registriert: Do, 02. Dez 2010 19:34
- Wohnort: Biberbach in Österreich
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
Hallo Jimmy,
leider funktioniert der Link nicht, eventuell ein Tippfehler?
Gruß
Markus
leider funktioniert der Link nicht, eventuell ein Tippfehler?
Gruß
Markus
Gruß
Markus
Markus
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
Phil Ide ist leider vor vielen Jahren sehr krank geworden, ob er noch lebt wissen wir nicht.
Die alten LINKs funktionieren nicht mehr, aber viele seiner Sachen stehen in Pablos newsgroup ...
http://news.xbwin.com/xfree.idep.resources
Ich meine es gab noch einen anderen Server ...
Die alten LINKs funktionieren nicht mehr, aber viele seiner Sachen stehen in Pablos newsgroup ...
http://news.xbwin.com/xfree.idep.resources
Ich meine es gab noch einen anderen Server ...
Gruß
Hubert
Hubert
-
- Der Entwickler von "Deep Thought"
- Beiträge: 2824
- Registriert: Fr, 08. Feb 2008 21:29
- Hat sich bedankt: 95 Mal
- Danksagung erhalten: 13 Mal
Re: INI File & Windows Registry
Hallo,
Alaska Software hat einen Mirror aufgenommen:
http://alaska-software.com/download/sho ... ection=400
Alaska Software hat einen Mirror aufgenommen:
http://alaska-software.com/download/sho ... ection=400
Liebe Grüsse aus der Eifel,
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: INI File & Windows Registry
sorry hab gar nicht gesehen das ich Links mit kopiert habe.satmax hat geschrieben:leider funktioniert der Link nicht, eventuell ein Tippfehler?
es geht hier nur um das IniEdit.exe welches mit einem TreeView das navigieren bei "vielen" INI Files zum editieren deutlich erleichtert.
für chinesische Zeichen habe ich eine DXE_TreeView Version welche mit Phil Class zusammenarbeitet auf Anforderung.
gruss by OHR
Jimmy
Jimmy
- satmax
- 1000 working lines a day
- Beiträge: 831
- Registriert: Do, 02. Dez 2010 19:34
- Wohnort: Biberbach in Österreich
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
Hallo Hubert,brandelh hat geschrieben:In der Wissensbasis habe ich für INI Dateien (eigentlich veraltet, aber ich bevorzuge die immer noch) Funktionen hinterlegt.
http://www.xbaseforum.de/viewtopic.php?f=16&t=3705
Es gibt auch eine REG Klasse und Beispiele zur Registry, aber wo fällt mir jetzt nicht ein.
Wie immer erst mal bei Pablo nachsehen ob er nicht sowas hat
in der Routine ist IMHO ein kleiner Fehler mit dem default Wert.
In Zeile 58 habe ich folgende Änderung vorgenommen (cDefault auskommentiert):
Code: Alles auswählen
nLen := GetPrivateProfileStringA(cSection, cVar, /*cDefault*/ "",;
@cBuffer, nBufferLen, cPfad+cFileName)
Code: Alles auswählen
nCount := VAL(GetIni("MeinEintrag","Offset","10","meinprog.ini" ))
Gruß
Markus
Gruß
Markus
Markus
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
Ich bin mir jetzt nicht sicher was du meinst, cDefault ist der Wert den man in der Anwendung als Standard übergibt, falls für diesen Begriff nichts in der INI steht.
Ich habe diesen Wert durchgereicht und er müsste wieder zurückkommen, sobald tatsächlich nichts gespeichert ist.
Get... legt auf jeden Fall nichts in der INI an und speichert auch nichts dort
Bei Gelegenheit werde ich das nochmal testen ...
Ich habe diesen Wert durchgereicht und er müsste wieder zurückkommen, sobald tatsächlich nichts gespeichert ist.
Get... legt auf jeden Fall nichts in der INI an und speichert auch nichts dort
Bei Gelegenheit werde ich das nochmal testen ...
Gruß
Hubert
Hubert
- satmax
- 1000 working lines a day
- Beiträge: 831
- Registriert: Do, 02. Dez 2010 19:34
- Wohnort: Biberbach in Österreich
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 1 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
In Deiner Originalvariante wird beim Fehlen des Eintrages zwar der Default-Wert geliefert, es wird aber kein INI Eintrag mit dem Default Wert erstellt.
Gruß
Markus
Markus
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: INI File & Windows Registry
ich war zunächst geneigt zu fragen, wieso GetIni() den Wert speichern sollte, aber dann fand ich die Stelle im Quellcode (die Zeilennummer stimmt nur im obigen Auszug):
du hast völlig Recht, nach meinem eigenen Kommentar möchte ICH bei dieser Funktion den Defaultwert speichern (damit man in der INI den Wert sicher ändern kann).
Das wird so nicht erreicht !
Code: Alles auswählen
nLen := GetPrivateProfileStringA(cSection, cVar, cDefault,@cBuffer, nBufferLen, cPfad+cFileName)
do case
case nLen == -1 // Puffer war nicht lang genug, aktuell Fehlermeldung
msgbox("GetPrivateProfileStringA() meldet -1")
cReturn := cBuffer
case nLen == 0
// kein Eintrag, ich möchte dann die INI erzeugen und den default Werte anlegen !
SetIni(cSection, cVar, cDefault, cPfad+cFileName )
cReturn := cDefault
otherwise
cReturn := left(cBuffer,nLen)
endcase
Das wird so nicht erreicht !
Gruß
Hubert
Hubert