如下代码是将text4,text5文本中的数据分别写到C:\program files\tra\new.ini目录下的2个项(NUMBER,PID)中,
Dim Ret As String, NC As Long
Ret = vbNullString
WritePrivateProfileString "COUNTER", "NUMBER", Text4.Text, "C:\program files\tra\new.ini"
WritePrivateProfileString "COUNTER", "PID", Text5.Text, "C:\program files\tra\new.ini"
请问如何将这2项中的值(047,181295)分别读到程序中的text6,text7文本框中?new.ini如下
......[COUNTER]
NUMBER = 047
PID = 181295......
Dim Ret As String, NC As Long
Ret = vbNullString
WritePrivateProfileString "COUNTER", "NUMBER", Text4.Text, "C:\program files\tra\new.ini"
WritePrivateProfileString "COUNTER", "PID", Text5.Text, "C:\program files\tra\new.ini"
请问如何将这2项中的值(047,181295)分别读到程序中的text6,text7文本框中?new.ini如下
......[COUNTER]
NUMBER = 047
PID = 181295......
Option ExplicitPrivate 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 Function GetIniStr(ByVal AppName As String, ByVal In_Key As String, _
ByVal IniFilePath As String) As String
Dim GetStr As String
On Error GoTo GetIniStrErr
If Trim(In_Key) = "" Or Trim(AppName) = "" Then
GoTo GetIniStrErr
End If
GetStr = VBA.String(256, 0)
GetPrivateProfileString AppName, In_Key, "", GetStr, 256, IniFilePath
GetStr = VBA.Replace(GetStr, VBA.Chr(0), "")
If GetStr = "" Then
GoTo GetIniStrErr
Else
GetIniStr = GetStr
GetStr = ""
End If
Exit Function
GetIniStrErr:
Err.Clear
GetIniStr = ""
GetStr = ""
End FunctionPrivate Sub Command1_Click()
Text6.Text = GetIniStr("COUNTER", "NUMBER", "C:\Test.ini")
Text7.Text = GetIniStr("COUNTER", "PID", "C:\Test.ini")
End Sub
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 LongPublic Function iniReadKey(strFileName As String, strSection As String, strKey As String) As String
Dim key As String * 255 '返回的键值,失败时返回字符串 "False"
Dim c As Integer
c = GetPrivateProfileString(strSection, strKey, "False", key, Len(key), strFileName)
iniReadKey = Replace(key, Chr(0), "")
End FunctionText6.Text = iniReadKey("C:\Test.ini", "COUNTER", "NUMBER")
Text7.Text = iniReadKey("C:\Test.ini", "COUNTER", "PID")
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
Public gstrNumber As String
Public gstrPassWord As String
Public Function IniInformationGet(strPath As String) As Boolean
Dim buffer$
Dim rtn&
Dim selectcmd As String
Dim strNumber As String
Dim strPassWord As String
On Error GoTo SysErr
If Dir(strPath, vbNormal) = "" Then
MsgBox "文件" & strIniPath & "没有找?。", vbDefaultButton1 + vbOKCancel, SYSTEMNAME
Exit Function
End If buffer = String(255, Space(1))
rtn = GetPrivateProfileString("COUNTER", "NUMBER", "", buffer, Len(buffer) - 1, strPath)
gstrNumber = Left$(Trim(buffer), InStr(Trim(buffer), vbNullChar) - 1)
If gstrNumber = "" Then Exit Function
buffer = String(255, Space(1))
rtn = GetPrivateProfileString("COUNTER", "PID", "", buffer, Len(buffer) - 1, strPath)
gstrPassWord = Left$(Trim(buffer), InStr(Trim(buffer), vbNullChar) - 1)
If gstrPassWord = "" Then Exit Function
IniInformationGet = True
Exit FunctionSysErr:
Select Case MsgBox(Err.Number & vbNewLine & Err.Description, vbRetryCancel + vbCritical, SYSTEMNAME)
Case vbRetry
Resume
Case vbCancel
End Select
End FunctionPrivate Sub Form_Load()
IniInformationGet "C:\program files\tra\new.ini"
End Sub