用VC写了一个Dll, 导出一个函数, 功能是把输入缓冲区数据 经过转换后 通过输出缓冲区回 传给调用者.
VC下函数原型是 extern "C"  __declspec(dllexport) int  __stdcall MEID2PESN(BYTE* pSrc, int nSrcSize, BYTE * pdest, int nDestSize)  
返回值为 (nSrcSize + nDestSize)
写def文件, 导出函数名为 MEID2PESN
我用VC写了一个测试端, 结果正常.
但用VB2005 写测试端就不正常.
这是我在VB2005中的代码.
--------------------
Private Declare Function MEID2PESN Lib "d.dll" (ByVal pSrc As Byte, ByVal nSrcSize As Long, ByRef pdest As Byte, ByVal nDestSize As Long) As Long
 
 Private Sub Command1_Click()
 Dim s(7) As Byte
 Dim d(4) As Byte
 Dim nRet as long
 d(0) = d(1) = d(2) = d(3) = 0
 s(0) = 0
 ...
 s(6) = 6
 '调用导出函数
 nRet = MEID2PESN(s(0), 7, d(0), 4)  
End Sub
-------------------
就是得不到 想要的结果. 请各位高手, 看怎么修改这个VB2005的代码, 或者连Dll的导出函数也修改了也行. 只要实现这个功能就可以.