c#调用c函数问题 - C/C++ / C语言
最近在做指纹识别的时候,遇到个问题,请高手们帮帮忙
厂商提供的dll里边有个方法
C/C++ code:
extern "C" __declspec(dllimport) BOOL FPSAPI CaptureImage(BYTE uwTimeoutS,BYTE* pRawImage);
c#调用映射是这样
C# code:
/// <summary>
/// 捕获图象
/// </summary>
/// <param name="uwTimeoutS">超时时间</param>
/// <param name="pRawImage">存贮图象数据</param>
/// <returns>1成功,其他失败</returns>
[DllImport("fpsiml.dll", EntryPoint = "CaptureImage", CallingConvention = CallingConvention.Winapi, CharSet = CharSet.Unicode)]
public static extern int CaptureImage(UInt16 uwTimeoutS, byte[] pRawImage);
但是调用这个方法后,pRawImage字节数组的每一个字节都是255,我想是不是这个函数对应传的数据类型有问题。
关注下
千万别沉
试试
public static extern int CaptureImage(UInt16 uwTimeoutS, ref byte[] pRawImage);
试过无用,传首字节也无用。头都大了,delphi示例传的是首字节,很正常。
BYTE* pRawImage 这个是指针大小呢?这时非托管对象,c#貌似不会给你自动转吧
以前我遇到这种变量时,用IntPtr的
所以 你的函数可能这么定义
[DllImport(&q
相关问答:
请问VFP中如何调用C/C++函数?
你要调用什么功能的函数?要看看VFP中有没有对应的函数,如果有就省着再调用了。如果没有,可以将C/C++函数写个DLL或FLL,然后在VFP调用即可。
十豆三 老师,怎么才能修改自己的 ......
txt 和XML 格式相应
不借助DataSet
导入读取TXT文件
然后直接写入XML(同一文件,不同数据,递增原数据没有被覆盖情况下增加数据.)
教个要点或最好是有个代码提示的
过路好汉 帮个忙撒^^
不会,帮楼主 ......
如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。
不会.
运行java程序
找工具查看一下那个程序的命令行
搜索下:jni ......
本人正在用Java做一个C/S架构的项目,
可是由于项目比较大,前期对架构的设计尤其重要,因为后期可能随时会加个功能或者去掉某些功能。
所以特地寻求如何设计C/S的架构使程序更加面向对象更加易于维 ......