Lire/ecrire/supprimer dans un fichier ini grâce aux apis windows

Description

Comme son l'indique, ce code permet de lire, écrire et supprimer des valeurs dans un fichier INI, et ceci le plus simplement du monde grâce aux APIs Windows

Source / Exemple :


Private Declare Function GetPrivateProfileString Lib "kernel32" Alias _
    "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal _
    lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString _
    As String, ByVal nSize As Long, ByVal lpFileName As String) As Long

Private Declare Function WritePrivateProfileString Lib "kernel32" Alias _
    "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal _
    lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long

Private Declare Function WritePrivateProfileSection Lib "kernel32" Alias _
    "WritePrivateProfileSectionA" ( _
     ByVal lpAppName As String, _
     ByVal lpString As Any, _
     ByVal lpFileName As String) As Long

'Fonction pour lire une valeur dans un fichier INI
Function INIRead(Entete As String, Variable As String, Optional Fichier As String) As String
    Fichier = IIf(Fichier = "", App.Path & "\" & App.EXEName & ".ini", Fichier)
    INIRead = String(255, Chr(0))
    INIRead = Left$(INIRead, GetPrivateProfileString(Entete, ByVal Variable, "", INIRead, Len(INIRead), Fichier))
End Function

'Fonction pour écrire une valeur dans un fichier INI
'La section spécifiée est créée automatiquement si elle n'existe pas déjà
Function INIWrite(Entete As String, Variable As String, Valeur As String, Optional Fichier As String) As String
    Fichier = IIf(Fichier = "", App.Path & "\" & App.EXEName & ".ini", Fichier)
    INIWrite = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)
End Function

'Fonction pour supprimer une valeur dans un fichier INI
Function INIDelete(Entete As String, Variable As String, Optional Fichier As String) As String
    Fichier = IIf(Fichier = "", App.Path & "\" & App.EXEName & ".ini", Fichier)
    INIDelete = WritePrivateProfileString(Entete, Variable, 0&, Fichier)
End Function

'Fonction pour supprimer une section dans un fichier INI
Function INIDeleteSection(Entete As String, Optional Fichier As String) As String
    Fichier = IIf(Fichier = "", App.Path & "\" & App.EXEName & ".ini", Fichier)
    INIDeleteSection = WritePrivateProfileSection(Entete, 0&, Fichier)
End Function

Conclusion :


J'ai mis cette source car j'ai remarqué qu'il y avait déjà des sources similaires mais plus complexes car n'utilisant pas les API...

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.