我在使用Dll遇到了一个问题,请大家帮忙.急!

lwlojj 2007-08-07 11:25:12
函数原型:
HANDLE init( _int16, unsigned long );//返回值为设备句柄
我的方法:
public static extern IntPtr init( ushort, ulong);
运行时报错:
检测到 PInvokeStackImbalance
Message: 对 PInvoke 函数“XXX!XXX.MainForm::init”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。

我没见过,请高手帮帮...
...全文
75 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yezi_1105 2007-08-07
  • 打赏
  • 举报
回复
我也遇到这样的问题,后来改好了,好象是数据类型不匹配的原因造成的,适一下吧
lwlojj 2007-08-07
  • 打赏
  • 举报
回复
抱歉,自己的点数不多了。
另外,函数返回值需要在别的函数作为输入参数使用。

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧