前言
.ini 文件是Initialization File的缩写,即初始化文件,是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了。但在某些情况,还是要直接编辑ini才方便。
一、调用系统库函数
'读配置文件(调用系统库函数)
Public Declare Function GetPrivateProfileString& Lib "kernel32" Alias "GetPrivateProfileStringA" ( _
ByVal AppName As String, _
ByVal KeyName As String, _
ByVal lpDefault As String, _
ByVal lpReturnString As String, _
ByVal nSize As Long, _
ByVal FileName As String) _
'写配置文件(调用系统库函数)
Public Declare Function WritePrivateProfileString& Lib "kernel32" Alias "WritePrivateProfileStringA" ( _
ByVal AppName$, _
ByVal KeyName$, _
ByVal keyDefault$, _
ByVal FileName$)
二、封装函数
'读配置文件(简化函数调用)
Public Function ReadIni(ByVal AppName As String, ByVal KeyName As String, ByVal DefaultValue As String, Optional IniPath As String) As String
Dim Buf As String
Dim ret As Integer
Dim tmp As String
Buf = String(1024, 0) 'buf=1024个0
If IniPath = "" Then
ret = GetPrivateProfileString(AppName, KeyName, DefaultValue, Buf, 1024, App.Path + "\config.ini")
Else
ret = GetPrivateProfileString(AppName, KeyName, DefaultValue, Buf, 1024, IniPath)
End If
tmp = Mid(Buf, 1, ret)
If InStr(1, tmp, Chr(0)) > 0 Then tmp = Left(tmp, InStr(1, tmp, Chr(0)) - 1)
ReadIni = tmp
End Function
'写配置文件(简化函数调用)
Public Function WriteIni(ByVal AppName As String, ByVal KeyName As String, ByVal KeyValue As String, Optional IniPath As String = "") As Boolean
If IniPath = "" Then
WritePrivateProfileString& AppName, KeyName, KeyValue, App.Path + "\config.ini"
Else
WritePrivateProfileString& AppName, KeyName, KeyValue, IniPath
End If
End Function
三、使用函数
WriteIni "pronum", "num", 123 '写入ini
num = ReadIni("pronum", "num", "0") '读出ini