Valide sur les plates-formes UNIX et Windows
La fonction ReadIniSection extrait une section complète du fichier d'initialisation (.ini).
Format de la fonction :
ReadIniSection( section as String, result as String, filename as String) as Integer
Identifie la section à extraire.
Identifie la variable Chaîne destinée à recevoir la section.
Identifie le nom du fichier d'initialisation (.ini). Si seul le nom du fichier est indiqué dans un environnement Windows, la recherche est effectuée sur le répertoire Windows, alors que dans les environnements non-Windows, la recherche porte sur le répertoire en cours.
ReadIniEntry () et ReadIniSection() renvoient une valeur positive si l'appel réussit ; sinon, elles renvoient la valeur zéro (0). La fonction recherche dans le fichier d'initialisation une section qui corresponde au nom indiqué par la section, puis copie toutes ses entrées dans la variable result selon le format suivant :
Entry_1 = Value_1 <LF> Entry_n = Value_n <LF>
Exemple :
Function strTok(in As string, BYREF pos As Integer, token As String, BYREF out As String) As Boolean
Dim buf As String
Dim len As Integer
If (pos > Len(in)) Then
strTok = FALSE
Else
buf = Mid(in, pos)
len = Instr(buf, token)
If len = 0 Then
out = buf
pos = pos + Len(buf) + 1
Else
out = Mid(buf, 0, len-1)
pos = pos + len + 1
End If
strTok = True
End If
End Function
Dim attrList, str, lf As string
Dim pos As Integer
' Effacer l'écran
ClrScr()
If Not(ReadIniSection("LIST", attrList, "c:\temp\test.ini")) Then
MessageBox("Impossible de lire la section LIST", "DMS", MB_OK + MB_ICONEXCLAMATION)
SetStatus(1)
quitter
End If
Print("[LIST]")
pos = 0
lf = chr(10)
While (strTok(attrList, pos, lf, str))
Print(str)
Wend
If Not(ReadIniEntry("SINGLE", "Entry", attrList, "c:\temp\test.ini")) Then
MessageBox("Impossible de lire la section SINGLE", "DMS", MB_OK + MB_ICONEXCLAMATION)
SetStatus(2)
quitter
End If
Print("[SINGLE]" + NEWLINE$ + "Entry=" + attrList)
If Not(DeleteIniEntry("SINGLE", "Entry", "c:\temp\test.ini")) Then
MessageBox("Impossible de supprimer l'entrée [SINGLE]", "DMS", MB_OK + MB_ICONEXCLAMATION)
SetStatus(3)
quitter
End If
If Not(DeleteIniSection("LIST", "c:\temp\test.ini")) Then
MessageBox("Impossible de supprimer la section LIST", "DMS", MB_OK + MB_ICONEXCLAMATION)
SetStatus(4)
quitter
End If
|
Copyright © 2014 CA Technologies.
Tous droits réservés.
|
|