begin process at 2012 02 17 09:16:35
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > FICHIER INI + FONCTIONS SAUVE POSITION + TAILLE FENETRE, METTRE VAL VITE,...

FICHIER INI + FONCTIONS SAUVE POSITION + TAILLE FENETRE, METTRE VAL VITE,...


 Information sur la source

Note :
2,33 / 10 - par 3 personnes
2,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Fichier / Disque Niveau :Débutant Date de création :23/03/2003 Date de mise à jour :23/03/2003 17:39:49 Vu :4 941

Auteur : AtomWare

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

'Voila un code que tout le monde cherche, même si il est déjà posté, il y'a qq plus...
'Copiez tout dans un module. L'utilisation est decrite plus bas

Utilisation :
Dans form_load, ou qq part, du moment que ce soit executé avec les readini, writeini,...
mettez :  INISetup app.path & "\" & "param.ini"

_______________


ECRIRE :     WriteINI "Section", "Clé", "Valeur"
LIRE :         Val = ReadINI ("Section", "Clé", "Valeur Défaut")
EFFACER CLé : DeleteKey "Section", "Clé"
EFFACER SECTION : DeleteSection "Section"
LIRE CLES : ReadKeys "Section"
LIRE SECTION : ReadSections

Sauvegarder positions, tailles d'une form :
IniPosSet Me     ' ou IniPosSet Form1   (remplacer form1 par nom de la form

Remettre positions, taille : IniPosGet Me


Sauvegarder vite une info ( sans taper la section) :
QuickSet "Cle", "Valeur"

Lire vite une info ( sans taper la section, defaut)
Val = QuickGet ("Clé")

Source

  • Option Explicit
  • 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
  • Dim m_File As String, m_Buffer As Long
  • Function DeleteKey(iSection As String, iKeyName As String)
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : Taille Buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Fichier non configuré"
  • End If
  • WritePrivateProfileString iSection, iKeyName, vbNullString, m_File
  • End Function
  • Public Function DeleteSection(iSection As String)
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Nom de fichier fichier non indiqué"
  • End If
  • WritePrivateProfileString iSection, vbNullString, vbNullString, m_File
  • End Function
  • Public Function INISetup(iniFile As String)
  • m_Buffer = 400
  • m_File = iniFile
  • End Function
  • Public Function ReadIni(iSection As String, iKeyName As String, Optional iDefault As String)
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
  • End If
  • Dim ret As String, NC As Long
  • ret = String(m_Buffer, 0)
  • NC = GetPrivateProfileString(iSection, iKeyName, iDefault, ret, m_Buffer, m_File)
  • If NC <> 0 Then
  • ret = Left$(ret, NC)
  • Else
  • ret = ""
  • End If
  • ret = Replace(ret, "%%&&Chr(13)&&%%", vbCrLf)
  • ReadIni = ret
  • End Function
  • Public Function ReadKeys(iSection As String)
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
  • End If
  • Dim ret As String, NC As Long
  • ret = String(m_Buffer, 0)
  • NC = GetPrivateProfileString(iSection, vbNullString, vbNullString, ret, m_Buffer, m_File)
  • If NC <> 0 Then
  • ret = Left$(ret, NC - 1)
  • End If
  • ReadKeys = ret
  • End Function
  • Public Function ReadSections()
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
  • End If
  • Dim ret As String, NC As Long
  • ret = String(m_Buffer, 0)
  • NC = GetPrivateProfileString(vbNullString, vbNullString, vbNullString, ret, m_Buffer, m_File)
  • If NC <> 0 Then
  • ret = Left$(ret, NC - 1)
  • End If
  • ReadSections = ret
  • End Function
  • Public Sub WriteIni(iSection As String, iKeyName As String, iValue As Variant)
  • If m_Buffer = 0 Then
  • Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
  • ElseIf m_File = "" Then
  • Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
  • End If
  • iValue = CStr(iValue)
  • iValue = Replace(iValue, vbCrLf, "%%&&Chr(13)&&%%")
  • WritePrivateProfileString iSection, iKeyName, CStr(iValue), m_File
  • End Sub
  • Public Function IniPosSet(FormName As Form)
  • On Error Resume Next
  • If FormName.WindowState = 0 Then
  • WriteIni FormName.Name, "Left", FormName.Left
  • WriteIni FormName.Name, "Top", FormName.Top
  • WriteIni FormName.Name, "Width", FormName.width
  • WriteIni FormName.Name, "Height", FormName.Height
  • End If
  • If FormName.WindowState <> 1 Then WriteIni FormName.Name, "WindowState", FormName.WindowState
  • End Function
  • Public Function IniPosGet(FormName As Form)
  • On Error Resume Next
  • If ReadIni(FormName.Name, "WindowState", 0) = 2 Then
  • FormName.Left = ReadIni(FormName.Name, "Left")
  • FormName.Top = ReadIni(FormName.Name, "Top")
  • FormName.width = ReadIni(FormName.Name, "Width")
  • FormName.Height = ReadIni(FormName.Name, "Height")
  • FormName.WindowState = 2
  • Else
  • FormName.Left = ReadIni(FormName.Name, "Left")
  • FormName.Top = ReadIni(FormName.Name, "Top")
  • FormName.width = ReadIni(FormName.Name, "Width")
  • FormName.Height = ReadIni(FormName.Name, "Height")
  • FormName.WindowState = 0
  • End If
  • End Function
  • Public Function QuickSet(kKey As String, kVal As String)
  • On Error Resume Next
  • WriteIni "APP.GLOBAL", kKey, kVal
  • End Function
  • Public Function QuickGet(kKey As String) As String
  • On Error Resume Next
  • QuickGet = ReadIni("APP.GLOBAL", kKey)
  • End Function
Option Explicit

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
Dim m_File As String, m_Buffer As Long

Function DeleteKey(iSection As String, iKeyName As String)
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : Taille Buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Fichier non configuré"
    End If
    WritePrivateProfileString iSection, iKeyName, vbNullString, m_File
    
End Function

Public Function DeleteSection(iSection As String)
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Nom de fichier fichier non indiqué"
    End If
    WritePrivateProfileString iSection, vbNullString, vbNullString, m_File
    
End Function

Public Function INISetup(iniFile As String)
    
    m_Buffer = 400
    m_File = iniFile
    
End Function

Public Function ReadIni(iSection As String, iKeyName As String, Optional iDefault As String)
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
    End If
    
    Dim ret As String, NC As Long
    
    ret = String(m_Buffer, 0)
    NC = GetPrivateProfileString(iSection, iKeyName, iDefault, ret, m_Buffer, m_File)
    
    If NC <> 0 Then
        ret = Left$(ret, NC)
    Else
        ret = ""
    End If
    
    ret = Replace(ret, "%%&&Chr(13)&&%%", vbCrLf)
    ReadIni = ret
    
End Function

Public Function ReadKeys(iSection As String)
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
    End If
    Dim ret As String, NC As Long
    
    ret = String(m_Buffer, 0)
    NC = GetPrivateProfileString(iSection, vbNullString, vbNullString, ret, m_Buffer, m_File)
    
    If NC <> 0 Then
        ret = Left$(ret, NC - 1)
    End If
    
    ReadKeys = ret
    
End Function

Public Function ReadSections()
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
    End If
    Dim ret As String, NC As Long
    
    ret = String(m_Buffer, 0)
    NC = GetPrivateProfileString(vbNullString, vbNullString, vbNullString, ret, m_Buffer, m_File)
    
    If NC <> 0 Then
        ret = Left$(ret, NC - 1)
    End If
    
    ReadSections = ret
    
End Function

Public Sub WriteIni(iSection As String, iKeyName As String, iValue As Variant)
    
    If m_Buffer = 0 Then
        Err.Raise "670", "INIReadWrite", "Erreur : taille buffer"
    ElseIf m_File = "" Then
        Err.Raise "670", "INIReadWrite", "Nom de fichier non indiqué"
    End If
    
    iValue = CStr(iValue)
    iValue = Replace(iValue, vbCrLf, "%%&&Chr(13)&&%%")
    WritePrivateProfileString iSection, iKeyName, CStr(iValue), m_File
    
End Sub


Public Function IniPosSet(FormName As Form)
    On Error Resume Next
    If FormName.WindowState = 0 Then
        WriteIni FormName.Name, "Left", FormName.Left
        WriteIni FormName.Name, "Top", FormName.Top
        WriteIni FormName.Name, "Width", FormName.width
        WriteIni FormName.Name, "Height", FormName.Height
    End If
    If FormName.WindowState <> 1 Then WriteIni FormName.Name, "WindowState", FormName.WindowState
End Function

Public Function IniPosGet(FormName As Form)
    On Error Resume Next
    If ReadIni(FormName.Name, "WindowState", 0) = 2 Then
        FormName.Left = ReadIni(FormName.Name, "Left")
        FormName.Top = ReadIni(FormName.Name, "Top")
        FormName.width = ReadIni(FormName.Name, "Width")
        FormName.Height = ReadIni(FormName.Name, "Height")
        FormName.WindowState = 2
    Else
        FormName.Left = ReadIni(FormName.Name, "Left")
        FormName.Top = ReadIni(FormName.Name, "Top")
        FormName.width = ReadIni(FormName.Name, "Width")
        FormName.Height = ReadIni(FormName.Name, "Height")
        FormName.WindowState = 0
    End If
End Function

Public Function QuickSet(kKey As String, kVal As String)
    On Error Resume Next
    WriteIni "APP.GLOBAL", kKey, kVal
End Function

Public Function QuickGet(kKey As String) As String
    On Error Resume Next
    QuickGet = ReadIni("APP.GLOBAL", kKey)
End Function

 Conclusion

Voila, n'hesitez pas a noter la source et à mettre un commentaire.


 Sources du même auteur

Source avec Zip CRYPTAGE BLUEFISH TWOFISH HASH MORSE MD5 BASE64 DES GHOST SE...
Source avec Zip Source avec une capture ACTOR2 - INTELLIGENCE QUI APPREND VITE, INTELLIGENTE, QUOIQU...
Source avec Zip Source avec une capture GROUPEUR DE FENÊTES (VOUS PERMET DE METTRE N'IMPORTE QUELLE ...
CHANGER LE TEXTE DU BOUTON DÉMARRER !
VALIDATION D'UNE ADRESSE IP : AMELIORATION DE CELLE DE MAX12...

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) MODIFIER LES EXTENSION DES FICHIERS par okosa
ROUTINE DIR RÉCURSIVE POUR OBTENIR LA LISTE DE TOUS LES FICH... par kerisolde
Source avec Zip Source avec une capture FILE,SECURITY,FICHIER par okosa
Source avec Zip Source avec une capture Source .NET (Dotnet) PATCHEUR DE FICHIER par tototh
Source avec Zip Source avec une capture LECTURE DES INFORMATIONS DES DISQUES COMPOSANT UN ENSEMBLE R... par jack

Commentaires et avis

Commentaire de Noiretulipe le 23/03/2003 20:25:38

cela m'a tout a fait l'air bien sympatique ....
Un zip serais le bien venu pour de fanéant  come moi

Commentaire de Nestor le 23/03/2003 23:04:43

pas de commentaire + pas zip = 2/10

Commentaire de Alex001 le 13/04/2003 10:49:35

moi je trouve ca bien , pour les commentaire , les autres n'ont qu'a lire le code y a pas besoins de commentaire avec ce que tu as deja ecrit.

continue @+

Commentaire de jonathan2002 le 01/06/2003 15:28:36

c trop long, ya bien plus court ! 3/10

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales