Rubrique précédente: WriteIniSection – Crée ou remplace une section entièreRubrique suivante: Fonctions de fichiers MIF et Inv


ReadIniEntry – Extraire une valeur d'une section spécifiée

Valide sous UNIX et Windows

La fonction ReadIniEntry extrait une valeur de la section spécifiée d'un fichier d'initialisation (.ini).

Format de la fonction :

ReadIniEntry(section as String, entry as String, result as String, filename as String) as Integer
section

Identifie la section qui contient l'entrée.

entrée

Identifie l'entrée dont la chaîne associée doit être extraite.

nom_fichier

Identifie le nom du fichier d'initialisation (.ini). Si seul le nom du fichier est indiqué dans les environnements Windows, la recherche est effectuée sur le répertoire Windows, alors que sur les environnements non-Windows, la recherche porte sur le répertoire en cours.

résultat

Identifie la variable Chaîne destinée à recevoir la valeur.

ReadIniEntry () et ReadIniSection() renvoient une valeur positive si l'appel réussit ; sinon, elles renvoient la valeur zéro (0). Cette fonction recherche dans le fichier d'initialisation une entrée qui correspond au nom indiqué par l'entrée sous l'en-tête de section spécifié par la section, puis copie la chaîne qui lui est associée dans la variable result.

Exemple :

Dim file, section, entry, value as string

Dim LF, CR as char
Dim rtr as integer

ClrScr()
LF = 0x0a
CR = 0x0d
file = "c:\dmscript.ini"
if Not(ExistFile(file)) then
	rtr = CreateFile(file, O_TEXT)
	if rtr = -1 then
		SetStatus(1)
		quitter
	end if
	closeFile(rtr)
end if
	
section = "Section 1"
value = "Param_1 = Valeur_1" + LF + "Param_2 = Valeur_2"

if WriteIniSection( section, value, file) then
	Print("Réussite de WriteIniSection.")
else
	Print("Echec de WriteIniSection.")
endif

section = "Section 2"
entry = "Param_3"
value = "Valeur_3"

if WriteIniEntry( section, entry, value, file) then
	Print("Réussite de WriteIniFile.")
else
	Print("Echec de WriteIniFile.")
endif

section = "Section 1"
rtr = ReadIniSection(section, value, file)
if (rtr > 0) then
	Print( Str(rtr) + CR + LF + value)
else
	Print("Echec de ReadIniSection.")
endif

section = "Section 2"
entry = "Param_3"
rtr = ReadIniEntry(section, entry, value, file)

if (rtr > 0) then
	Print( Str(rtr) + CR + LF + entry + " = " + value)
else
	Print("Echec de ReadIniEntry.")

endif