用MODEM实现来电显示的方法
2006-02-06 00:31:17 Mon | 阅读(392)次
1、首先必须要求MODEM支持来电显示(即:CallerID),若已经安装好MODEM驱动软件(即MODEM
AT命令集的解释表),就可以到系统注册表中去查找到激活来电显示的命令:
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Class/Modem/0000/EnableCallerID/1
其中0000为WINDOWS给MODEM编的号,不同的MODEM在这里可能为0001,0002等。当然你可以查看
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Class/Modem/0000/Model
是否为你所使用的MODEM。
一般来说激活来电显示的AT命令为at#cid=1<cr>或at+vcid=1<cr>(<cr>代表回车键CHR(13))
由于激活来电显示的命令不是一个普通的AT命令,MODEM一般不保存在缺省配置(即at&w0,at&w1)中
故每次运行软件时、MODEM重新开机时均需要发此命令到MODEM。
2、当有来电时,在第一次振铃与第二次振铃之间,交换机会发送来电号码到MODEM:格式如下
Date = 0522
Time = 1632
NMBR = 13951982895
你所要做的来电显示就是把NMBR = 后的号码截下来并显示出来,不用我说前面就是来电的日期与
时间了。
3、关与实现来电显示的源程序
程序采用VB6编写,需要的文件都包含在压缩包cid.zip中
frmMain.frm
cid.vbp
vbreg.bas 实现对WINDOWS注册表的访问
cid.exe 已编译好的来电显示程序
cid.mdb 用于保存来电信息
4、几个必要条件
硬件需求
4.1、已经向电信局申请了来电显示。
4.2、有一个支持来电显示的MODEM。
4.3、安装了MODEM带的驱动软件。
软件需求
4.4、需要的VB支持文件 MSVBVM60.DLL(未包含在安装程序中,98及以上机器有)。
4.5、数据库环境为ADO 2.1(未包含在安装程序中,98及以上机器有)。
4.6、VB带的串口通信控件 MSCOMM32.OCX(包含在安装程序中)。