很多 Windows API 和 DLL 函数的返回值是字节大小。返回值代表返回字符串的长度。Visual Basic 将返回的字符串转换成 Unicode,即使是返回值仍然代表 ANSI 和 DBCS 字符串的长度。因此不能使用返回长度作为字符串长度。下面的代码得到正确的返回的字符串:
buffer = String(145, Chr(" "))
ret = GetPrivateProfileString(section, _
entry, default, buffer, Len(buffer)-1, filename)
retstring = Left(buffer, Instr(buffer, Chr(0))-1))
详细信息 有关详细信息,请参阅专业版和企业版的《部件工具指南》里“访问 DLL 和 Windows API ”中的“访问 Microsoft Windows API”一节。