DllImport类型转换问题

dongxy14 dongxy14 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我在做一个摄像头采集程序,需要引用C++生成的DLL中的一个函数,C++函数签名如下,在C#中该怎么定义呢?

//index:摄像头编号
//pFrameBuf:用来接收一帧JPEG静态图片的缓冲区
//bufferLen:用来接收一帧JPEG静态图片的缓冲区
int capGetLastJpeg(int index,unsigned char *pFrameBuf,unsigned int bufferLen)

C++获取、保存图片代码

void MakeJpeg()
{
int length = 0;
int bufferLen = 40960;
PBYTE buffer = malloc (bufferLen);

length = capGetLastJpeg(0, buffer, bufferLen);
if (length)
{
HANDLE hFile = NULL;
DWORD dwWritten = 0;

hFile = CreateFile(TEXT("\\out.jpg"), GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile != INVALID_HANDLE_VALUE)
{
WriteFile(hFile, buffer, length, &dwWritten, NULL);
CloseHandle(hFile);

//MessageBox(NULL, TEXT("Write jpeg success."), TEXT("Notice"), MB_OK);
}
}

if (buffer)
{
free (buffer);
}
}


请问在C#中该怎么定义呢?
小弟分不多,只能用所有的积分了。
谢了!
...全文
评论 6
收藏 已收藏
分享
返回顶部
dongxy14
C# 111,129 成员 642,539 内容