'INI文件操作函数
Private Declare Function GetPrivateProfileStringByKeyName& Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName$, ByVal lpszKey$, ByVal lpszDefault$, ByVal lpszReturnBuffer$, ByVal cchReturnBuffer&, ByVal lpszFile$)
Private Declare Function GetPrivateProfileStringKeys& Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName$, ByVal lpszKey&, ByVal lpszDefault$, ByVal lpszReturnBuffer$, ByVal cchReturnBuffer&, ByVal lpszFile$)
Private Declare Function GetPrivateProfileStringSections& Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName&, ByVal lpszKey&, ByVal lpszDefault$, ByVal lpszReturnBuffer$, ByVal cchReturnBuffer&, ByVal lpszFile$)
Private Declare Function WritePrivateProfileStringByKeyName& Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lplFileName As String)
Private Declare Function WritePrivateProfileStringToDeleteKey& Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As Long, ByVal lplFileName As String)
Private Declare Function WritePrivateProfileStringToDeleteSection& Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Long, ByVal lpString As Long, ByVal lplFileName As String)
'自定义读取INI函數
Public Function getIni(ByVal pfileName As String, ByVal psection As String, ByVal pkey As String) As String
Dim x As Long, Buff As String * 128, i%
x = GetPrivateProfileStringByKeyName(psection, pkey, "", Buff, 128, pfileName)
i = InStr(Buff, Chr(0))
getIni = Trim(Left(Buff, i - 1))
End Function
'自定义写入INI函數
Public Function WriteIni(ByVal psection As String, ByVal pkey As String, ByVal pvalue As String, ByVal filePath As String) As Boolean
Dim x As Long, Buff As String * 128, i As Integer
Buff = pvalue + Chr(0)
x = WritePrivateProfileStringByKeyName(psection, pkey, Buff, filePath)
WriteIni = x
End Function