'************************************************* '* Author: mokton ******************** '* Edition: 1.0.0 ***** ***** '* Date: 2008-02-29 ******************** '* Email: mokton@gmail.com ******************** '************************************************* Option Explicit Private Declare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, lpKeyName As Any, ByVal lpDefault As String, ByVal lpRetunedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long 'GetPrivateProfileString(Section , KeyWord , 读取失败的代替值 ,KeyWordValue返回值 , Value值缓冲区大小 , INI路径) Private Declare Function WritePrivateProfileString Lib "Kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lplFileName As String) As Long 'WritePrivateProfileString(Section , KeyWord ,KeyWordValue ,INI路径) Public IniPath As String 'INI文件所在的路径 和 文件名 Public Variable1 As String '变量1 字符串型 Public Variable2 As Integer '变量2 整型 Public Variable3 As Boolean '变量3 布尔型 Public Function Loadings() As Boolean On Error GoTo Err IniPath = App.Path + "/Net.ini" Variable1 = GetFromINI("SectionName", "Variable1Name", IniPath) sEnableVerb = CInt(GetFromINI("SectionName", "Variable2Name", IniPath)) sDisableVerb = CBool(GetFromINI("SectionName", "Variable3Name", IniPath)) Loadings = True Exit Function Err: Loadings = False End Function Private Function GetFromINI(AppName As String, KeyName As String, FileName As String) As String Dim RetStr As String Dim Result As Long RetStr = String(255, Chr$(0)) Result = GetPrivateProfileString(AppName, ByVal KeyName, "", RetStr, Len(RetStr), FileName) RetStr = TrimNull(RetStr) GetFromINI = RetStr End Function Private Function TrimNull(Item As String) As String Dim pos As Integer pos = InStr(Item, Chr$(0)) If pos Then Item = Left$(Item, pos - 1) TrimNull = Item End Function