Option Explicit
Private Declare Function GetPrivateProfileInt Lib "kernel32" _Alias "GetPrivateProfileIntA" (ByVal lpApplicationName As String, _ByVal lpKeyName As String, _ByVal nDefault As Long, _ByVal lpFileName As String) As Long
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 ErrorMsg As String
Private Sub Class_Initialize()ErrorMsg = vbNullStringEnd Sub
'写入----------------------------------Public Function WriteString(iniFileName As String, Section As String, key As String, Value As String) As BooleanWriteString = FalseErrorMsg = vbNullStringIf iniFileName = "" ThenErrorMsg = "INI file has not been specifyed!"Exit FunctionEnd IfIf WritePrivateProfileString(Section, key, Value, iniFileName) = 0 ThenErrorMsg = "Failed to write to the ini file!"Exit FunctionEnd IfWriteString = TrueEnd Function
'读出字符串----------------------------Public Function ReadString(iniFileName As String, Section As String, key As String, Size As Long) As StringDim ReturnStr As StringDim ReturnLng As LongErrorMsg = vbNullStringReadString = vbNullStringIf iniFileName = "" ThenErrorMsg = "INI file has not been specifyed!"Exit FunctionEnd IfReturnStr = Space(Size)ReturnLng = GetPrivateProfileString(Section, key, vbNullString, ReturnStr, Size, iniFileName)ReadString = Left(ReturnStr, ReturnLng)End Function
'读出数值-----------------------------Public Function ReadInt(iniFileName As String, Section As String, key As String) As LongDim ReturnLng As LongReadInt = 0ErrorMsg = vbNullStringIf iniFileName = "" ThenErrorMsg = "INI file has not been specifyed!"Exit FunctionEnd IfReturnLng = GetPrivateProfileInt(Section, key, 0, iniFileName)If ReturnLng = 0 ThenReturnLng = GetPrivateProfileInt(Section, key, 1, iniFileName)If ReturnLng = 1 ThenErrorMsg = "Can not read the ini file!"Exit FunctionEnd IfEnd IfReadInt = ReturnLngEnd Function