0/5 (6 avis)
Snippet vu 14 453 fois - Téléchargée 75 fois
'Ce module lit et ecrit dans un fichier ini '--------------------------------------------------------------- ' declaration des API de PrivateProfile '--------------------------------------------------------------- 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 '------------------------------------------- 'Const pour la lecture des fichiers ini '------------------------------------------- Const gNomFichier = "C:\testFichierIni.ini" 'Emplacement du fichier ini (a recuperer dans la base de registre) Const gSection = "\MaSection" 'nom de la section entre crochet Const gSize = 1024 'Enum permet de recuperer les nom de key a l'appel de la fonction Public Enum eKey MaTable MesScores mesJoueurs End Enum Private Const bDebug = False '------------------------------------------------------------------------------ 'Cette fonction lit dans les fichiers ini '------------------------------------------------------------------------------ Public Function Lecture(ByVal Key As eKey) As String Dim retour As Long 'retour de la fonction API : gere ces erreurs Dim sDefault As String 'Phrase de retour par default Dim strRetour As String 'la réponse de l'API Dim sKey As String sDefault = "Erreur WolfKiller ;-)" strRetour = String$(gSize, 0) 'SUPER IMPORTANT sinon plante l'API et VB 'Select qui transforme l'enum en string 'Enum permet de recuperer les nom de key a l'appel de la fonction Select Case Key Case MaTable sKey = "MaTable" Case MesScores sKey = "MesScores" Case mesJoueurs sKey = "MesJoueurs" End Select 'Utilisation de l'API retour = GetPrivateProfileString(gSection, sKey, sDefault, strRetour, gSize, gNomFichier) If bDebug Then MsgBox ("Retour : " + strRetour) Lecture = strRetour End Function '------------------------------------------------------------------------------ 'Cette fonction ecrit dans les fichiers ini '------------------------------------------------------------------------------ Public Function Ecriture(ByVal Key As eKey, ByVal sEcrit As String) As Long Dim retour As Long Dim sKey As String 'Select qui transforme l'enum en string 'Enum permet de recuperer les nom de key a l'appel de la fonction Select Case Key Case MaTable sKey = "MaTable" Case MesScores sKey = "MesScores" Case mesJoueurs sKey = "MesJoueurs" End Select 'Utilisation de l'API retour = WritePrivateProfileString(gSection, sKey, sEcrit, gNomFichier) If bDebug Then MsgBox ("Ecriture effectuée ") Ecriture = retour End Function
12 sept. 2006 à 16:35
Patrio LEBVOUA From Congo-Bzv
19 mai 2006 à 18:48
Je l'ai remodifier à ma manière mais il est vraiment interressant.
Bonne continuation.
8 déc. 2002 à 19:31
je voudrai juste demander si kelk un possederai une source avec une fonction de lecture d'un fichier ini avec seulement le nom du fichier en parametres.
merci
et je souhaiterai egalement savoir comment le fichier ini peut etre lu (chargé) par une application.
14 nov. 2001 à 18:20
en creant un module contenant:
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
Function LireINI(Entete As String, Variable As String) As String
Dim Retour As String
Fichier = App.Path & "" & App.EXEName & ".ini"
Retour = String(255, Chr(0))
LireINI = Left$(Retour, GetPrivateProfileString(Entete, ByVal Variable, "", Retour, Len(Retour), Fichier))
End Function
Function EcrireINI(Entete As String, Variable As String, Valeur As String) As String
Fichier = App.Path & "" & App.EXEName & ".ini"
WriteINI = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)
End Function
' Pour l'executer ex :
'nommodule.EcrireINI"MonEntete", "MaVariable", "MaValeur"
nommodule.LireINI "MonEntete", "MaVariable"
4 oct. 2001 à 03:59
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.