Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Esiste un ogetto....

Ciao sono Pasquale e ho urgentemente bisogno d'aiuto...
sto scrivendo un'applicazione in VB e ho necessità di leggere da un file di
configurazione (.ini) dei parametri di impostazione del programma....esiste
un oggetto VB in grado di gestire i file di configurazione??? Se si come si
usa ???
Grazie anticipatamente, Pasquale
Send your message to : 
russop...@libero.it

Prova questo:
'--------------------------------
' dichiarazioni
'--------------------------------
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
Public gsUser As String
Public gsINIFile As String
'--------------------------------
' funzioni
' NB ce ne sono tante solo per semplificare la vita:
' si chiamano in cascata e usi solo INIGetSettings e INISaveSettings
'--------------------------------
Public Function INIGetValue(INIPath As String, _
     INIGroup As String, _
     INIKey As String, _
     INIDefault As String) As String
  ' get line from .INI file
  ' input: inpath=path to .INI file, INIgroup=group header (no [])
  ' inikey=parameter name, inidefault=default value
  ' output: value from file or default if not found
  Dim x As Long
  Dim sBuff As String * 512
  x = GetPrivateProfileString(INIGroup, INIKey, INIDefault, sBuff,
Len(sBuff), _
         INIPath)
  INIGetValue = Left$(sBuff, x)
End Function
'--------------------------------
Public Sub INISetValue(INIFile As String, _
     INIGroup As String, _
     INIKey As String, _
     INIValue As String)
  ' updates single line of .INI file
  ' NOTE: group and/or parameter line will be added if not already
present
  ' input: inifile=full path to .INI file,
  ' inigroup=group header (no [])
  ' inikey=parameter name,
  ' inivalue=new parameter value
  Call WritePrivateProfileString(INIGroup, INIKey, INIValue, INIFile)
End Sub
'--------------------------------
Public Sub INIDeleteValue(INIPath As String, _
     INIGroup As String, _
     INIKey As String)
  ' delete line from .INI file (physically)
  ' input: inipath=path to .INI file, iniGroup=group header (no []),
  ' INIkey=parameter name
  Call WritePrivateProfileString(INIGroup, INIKey, 0&, INIPath)
End Sub
'--------------------------------
Public Function INIGetSettings(INISection As String, _
     INIVar As String, _
     INIDefault As String) As String
  INIGetSettings = INIGetValue(gsINIFile, _
                   INISection, _
                   INIVar, INIDefault)
End Function
'--------------------------------
Public Sub INISaveSettings(INISection As String, _
     INIVar As String, _
     INIValue As String)
  INIDeleteValue gsINIFile, INISection, INIValue
  INISetValue gsINIFile, INISection, INIVar, INIValue
End Sub
'--------------------------------
'esempi di uso
'--------------------------------
  A = INIGetSettings("MostRecent", "A", "0")
' legge il numero intero A dalla voce (stringa) "A" della sezione
"MostRecent". Se non c'e' nel file ini, allora legge "0" e ritorna 0
(numero).
'--------------------------------
 INISaveSettings "MostRecent", Trim("A", Trim(Str$(K))
' salva (come stringa) nella voce "A" della sezione "MostRecent" il
numero intero K.
' Le due operazioni vengono fatte sul file il cui nome e' nella
variabile globale gsINIFile (gs=Global String).
Spero ti servano. Le uso regolarmente e funzionano.
Ciao


 wrote in message
LDlj4.3034$C3.3...@news.infostrada.it...
