我在用api函数夺取ini配置文件时,用了GetPrivateProfileString函数,但是在定义字串缓冲区区大小后,但是的到的数据每次都要在后面添加空格来填满串缓冲区,但是怎么去掉这些无用的空格呀!
下面是api函数
Option Explicit
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
Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As LongPublic Bip As String * 200下面是代码:
        N = GetPrivateProfileString("本地数据库", "地址", "", Bip, Len(Bip), FileName)
        Bip = Left(Bip, N)
每次bip都会被添成200个字符,但由于bip的字符串大小不一样,无法判断怎么去截取需要的一部分

解决方案 »

  1.   

    Public Bip As String * 200在定义的时候直接写成这样就可以了
    Public Bip As String
      

  2.   

    Option Explicit
    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
    Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As LongPublic Bip As String
            Bip=string(200,chr(0))
            GetPrivateProfileString "本地数据库", "地址", "", Bip, 200, FileName
            Bip = split(Bip, chr(0))(0)
      

  3.   

    dim lLen as long
    lLen=GetPrivateProfileString ("本地数据库", "地址", "", Bip, 200, FileName)
    Bip=left$(Bip,lLen)