请教一个64位编译的VB.NET程序,调用64位 dll 的问题
64位 的dll 是用VC2008写的
主要问题在于怎么传入传出字符串
dll其中一个函数声明为
Public Declare Function ws_readBlock Lib "WSR.dll" (ByVal Port As Integer, ByVal Block As Integer, ByRef Data As Byte) As Integer
问题就在这个参数上:ByRef Data As Byte
在Basic6下,这个方式声明是可以通过的,在VB.NET下32位编译的程序也可以正常使用这个函数,
但是VB.NET 64编译的程序调用这个函数传出的数值不对,只能获得Byte数组的第一个Byte数值,
后面的数值取不到。请哪位高手指点一下,谢谢!