关于多媒体响应函数的问题(100分)

  • 主题发起人 主题发起人 lovinger_2000
  • 开始时间 开始时间
L

lovinger_2000

Unregistered / Unconfirmed
GUEST, unregistred user!
最近可能要接一个单子,要求开发针对某语音卡的一套语音应答系统,犹如1860等自动台。客户提供了DLL的动态连接库,里面有该语音卡的各种响应函数,犹如随时判断是否有来铃函数Boolean CheckCall();这是明显的C函数的动态连接库,请问在Delphi里面可以直接调用返回Boolean值吗?比如如下代码:
var
CallNow: Boolean;
......
CallNow:=CheckCall;
......
用这种代码使CallNow得到CheckCall()的返回值可行吗?

另外,因为要随时监听是否有来铃,我准备使用的监听方法是在窗口中加入一Timer控件,设置每过0.1s检测一次,但是我觉得这种方法是否会太影响效率,请问有没有更好的方法,使监听的函数能像某一Button一样,不用Timer去循环检测。
 
function CheckCall: BOOL;
cdecl;
可以直接赋值给Boolean
 
To weiwei81123:
同样是在Windows下面,为什么不同stdcall或safecall呢,它们的效率比cdecl高多了啊。
 
这个看你那个DLL导出的函数是哪种就用哪种
 
“这个看你那个DLL导出的函数是哪种就用哪种”请问什么命令应该对应哪种函数呢?
 
直接就
if CheckCall then

....
这样不行吗?
 
To app2001:
肯定要用if CheckCall then
语句的,不过这条语句应该放在某个响应函数里面啊,中不可能放在某一个Button按钮的Click上吧?电话来铃的时候还要敲一下Button,才检查是否有来铃?开玩笑吧
 
那是,你可以用多线程的方式另开一个线程来做,也可象你说的那样放一时钟控件来进行的
http://www.vclxx.org/DELPHIGB/AAAT1026.HTM#timer这里有一些控件,你也可参考一下的
 
多人接受答案了。
 
后退
顶部