Windows95になってから設定項目はレジストリに!と言われてもやっぱりテキストに格納したい時があります。何より扱いに気を使わなくて済みますもんね。
私は設定値を取得するのにFunctionモジュール、書き出すのにSubモジュールにしてしまいます。ここの例ではデータベースのパス名をiniファイルに設定・取得しています。
'sFilePathにはiniファイルのパス名を設定します。
Function INI_DBPATH_READ(sFilePath As String) As String
Dim lret As Long
Dim sWk As String
Dim iLen As integer
'データベースパスの取得
sWk = String$(80, " ")
lret = GetPrivateProfileString("DB_PATH", "DB_PATH1", "", sWk, 80,sFilePath)
If lret = 0 Then
INI_DBPATH_READ = ""
Else
iLen = Len(Trim(sWk))
INI_DBPATH_READ = Left$(sWk, iLen)
End If
End Function
'sFilePathにはiniファイルのパス名、sDbPathにはデータベースのパス名を設定します。
Sub INI_WRITE(sFilePath As String, sDbPath As String)
Dim ret As Integer
'データベースパスの出力
ret = WritePrivateProfileString("DB_PATH", "DB_PATH1", sDbPath, sFilePath)
End Sub
'-------------------------------------------------------------
'
'-------------------------------------------------------------
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
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