C# dllimport 调用dll无响应

tiancl01 2014-01-16 10:05:01
delphi定义如下:
function Aukit_DCU8004GetDotStatus
(
hCom:THandle;
DcuID:integer;
var rDotStatus:TDCU8004_GetDotStatus;
rSleep:TSleep
): integer; stdcall;
external 'DCU8004.dll' name 'Aukit_DCU8004GetDotStatus';

function Aukit_DCU8004SetDotStatus
(
hCom:THandle;
DcuID:integer;
const rDotStatus:TDCU8004_SetDotStatus;
rSleep:TSleep
): integer; stdcall;
external 'DCU8004.dll' name 'Aukit_DCU8004SetDotStatus';


C# dllimport如下:

//[DllImport("DCU8004.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
//public static extern int Aukit_DCU8004GetDotStatus(IntPtr hCom, int DcuID, ref TDCU8004_DotStatusOne[] dotstatus, TSleep tSleep);

//[DllImport("DCU8004.dll", CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
//public static extern int Aukit_DCU8004SetDotStatus(IntPtr hCom, int DcuID, TDCU8004_DotStatusOne[] dotstatus, TSleep tSleep);

问题是调用后程序没有任何响应。在线急等。
...全文
212 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiancl01 2014-01-16
  • 打赏
  • 举报
回复
dll的设置里没有这个,没法设。
BenBenBears 2014-01-16
  • 打赏
  • 举报
回复
串口WriteTimeout和ReadTimeout 超时设置为-1了吧?
tiancl01 2014-01-16
  • 打赏
  • 举报
回复
门禁设备串口的读写,我怀疑串口通信有问题
BenBenBears 2014-01-16
  • 打赏
  • 举报
回复
可能是阻塞了,所以界面也假死了。 问一句,调用的dll是干什么用的?
tiancl01 2014-01-16
  • 打赏
  • 举报
回复
加了 try catch还是没响应,界面也调不出来了,一直在后台卡着。
threenewbee 2014-01-16
  • 打赏
  • 举报
回复
总得报错或者有返回值吧。 除非根本没有执行到,或者你加了try catch了。

110,539

社区成员

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

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

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