各位大神。我用C++的编写的DLL,导出函数的某个参数类型为const char *info
用VB的方式调用DLL。函数参数声明为ByVal info As String
用该方式,常规的内容是可以得到的。
如果DLL返回的内容info。中间包含空字符。则只能得到空字符前的那一部分内容
有什么办法,可以得到全部内容么?(即空字符后的内容也要获取到)
...全文
34910打赏收藏
VB String处理
各位大神。我用C++的编写的DLL,导出函数的某个参数类型为const char *info 用VB的方式调用DLL。函数参数声明为ByVal info As String 用该方式,常规的内容是可以得到的。 如果DLL返回的内容info。中间包含空字符。则只能得到空字符前的那一部分内容 有什么办法,可以得到全部内容么?(即空字符后的内容也要获取到)
of123大哥
其实我是传递函数给DLL的。(回调函数的方式)
所以没有传参
VB部分
Public Delegate Sub Read111(ByVal info As String, ByVal len As Integer)
Public Declare Sub SetVerificationCallBack Lib "WES.dll" (ByVal ret As Read111)
Public Sub Read(ByVal info As String, ByVal len As Integer)
方法体
...
(此处DLL传递过来的内容中是类似“123\x00\x01\x00\x41”的数据。此处info只能获取到内容“123”我想获取全部的内容)
End Sub
调用DLL方法SetVerificationCallBack
SetVerificationCallBack(AddressOf Read)