VB或VB.net中如何调用DLL中BYTE *参数
HYUtil.dll中函数
HYUTIL_API UINT WINAPI HYGetMemSnap (UINT unIndex,BYTE *pImgBuf,long nSize,VIDEOFMT enFmt,DWORD dwTimeout);
帮助中说明如下:
UINT WINAPI HYGetMemSnap(UINT unIndex,BYTE *pImgBuf,long nSize,VIDEOFMT enFmt,DWORD dwTimeout)
说明:获取快照数据。在超时设置dwTimeout时间范围内,该函数将处于阻塞状态。
参数:UINT unIndex:基于0的设备索引。
BYTE * pImgBuf:用于接收快照图片的用户缓冲区地址。
long nSize:用户缓冲区尺寸,可通过HYGetImgBufsize函数获得。
VIDEOFMT enFmt:请求快照图片格式,目前支持FMT_YUY2和FMT_RGB两种。
DWORD dwTimeout:快照超时,单位毫秒。
返回:ERR_SUCCESS:操作成功。
其他:操作失败。失败原因由返回代码给出。
我在VB中声明
Public Declare Function HYGetMemSnap Lib "HYUtil.DLL" (ByVal unIndex As Integer, ByRef pImgBuf As Long, ByVal nSize As Integer, ByVal enFmt As Integer, ByVal dwTimeout As Long) As Integer
然后如下调用:
Dim b(1000) As Byte
xx = HYGetMemSnap(0, VarPtr(b(0)), pnSize, 3, 100)
该函数应该是但数组中为空
请问 BYTE * 在VB 或VB.net中如何调用??