+ -
当前位置:首页 → 问答吧 → C# 调用dll的时候返回false

C# 调用dll的时候返回false

时间:2011-12-19

来源:互联网

代码是:
[DLLImport("Generator.dll",EntryPoint="ResetMachine")]
[return:MarshalAs(UnmanagedType.I1)]
public static extern bool ResetMachine();

使用的时候直接用一个 if 判断,if里面判断以后执行的程序,不对ResetMachine()进行操作,只是些C#的认证之类的
if(ResetMachine())
{
  //true执行的程序
}else
{
  //false执行的程序
}

他写的是回调函数,在返回以前用弹出框返回了值,是true,但是到我这边调用判断的时候就成false了

求高手帮忙解决下、、、 、、、

作者: syf891022   发布时间: 2011-12-19

确认dll内的ResetMachine函数判断真假的条件。

作者: spade24   发布时间: 2011-12-19

dll是实现和一个设备的连接,连接成功后dll会给设备发个命令,如果设备接受命令成功返回true,失败返回false,我写的是C#部分,dll是用C++开发,我写的部分只是要判断true和false然后对应用层做相应的提示操作

作者: syf891022   发布时间: 2011-12-19

说明你调用的这个C++方法并没有成功的连接到设备

作者: facelessvoidhj   发布时间: 2011-12-19

不,在测试的时候,他在返回以前用弹出框返回了值,是true,可是到我这边调用判断的时候就成false了,说明底层连接设备成功了

作者: syf891022   发布时间: 2011-12-19

该回复于2011-12-19 11:52:04被管理员删除

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
#6楼 得分:0回复于:2011-12-19 11:57:33
你把C++这个函数贴出来。。。

作者: richard66wong   发布时间: 2011-12-19

C++的函数不是我写的,我也没有啊

作者: sdl2005lyx   发布时间: 2011-12-19