调用Dll函数后,如何在指定的时间内若该函数还未返回,则强制返回(100分)

  • 主题发起人 主题发起人 qnmd
  • 开始时间 开始时间
Q

qnmd

Unregistered / Unconfirmed
GUEST, unregistred user!
在Dll有一个函数
function CopyFile(sfilename: pchar): bool;
stdcall;
external 'aa.dll';
该函数访问硬件设备文件。
当调用CopyFile后,在指定的时间内若函数未返回,就强制返回false.
可以实现吗?
对调用Dll函数保护执行,否则进入等待并死锁。帮帮我吧
 
关 注中.....
 
如果dll是你们自己的话,在函数体内做计时吧。不是的话,用线程去访问,定时杀线程
 
dll是别人的。用来访问硬件设备。没有加入超时返回,
也没有判断连接是否正常的函数可以使用。

我在Activex form 中要调用一些函数。如设备连接发生异常。而我的程序又发现不了这个问题,调用后,函数进入死锁,不会返回。我该怎么办。谢谢了

最好用简单的方法实现。如定时器等等。
 
线程访问也可以,不过要调用的地方很多,改不方便。或者自己写一个函数,在该函数里实现调用,并加入超时处理。谢谢xuegaoyili,与wp231957。
 
后退
顶部