用MFC改写的点对点语音通讯ActiveX控件
2010-07-01 20:43:26 来源:WEB开发网程序简介
用ActiveX重新改写了一个点对点通讯的DLL文件(该DLL文件是VCKBASE上的一位前辈写的)偶只是把它改成了一个MFC的ActiveX,这样可以方便的在VB,vbs,js等脚本语言,特别是用在IE里面特别方便了。
此程序主要向你说明,其实ActiveX没有多么的神秘。你遵守的它的规则,什么功能都能添加到ActiveX中,并且和写其它的普通的程序没有什么区别!
缺点
因为同时只能有一个程序打开音频设备,所以不能开两个实例进行聊天。本来打算改改好,只发布成品ActiveX,不发布原代码的。可最近鸟事很多,没时间。。所以连源代码都贡献了~~~大家可以自己完善一下。如果您做了什么好的改进,请您给作者我发一份,我会十分感谢!!!
程序用到的知识点:
用MFC如何写activex
activex中如何应用 socket 编程 (其实和普通程序一样~~)
G729a 语音压缩。
读写语音设备!
Activex提供两次属性nTcpPort、nUdpPort和两个方法StartTalk、EndTalk.
[ uuid(91379582-7D2E-49A7-A7C3-1BB5DBFE9F75),
helpstring("VP2P Control 的调度接口")]
dispinterface _DVP2P
{
properties:
[id(4), helpstring("属性 strIP")] BSTR strIP;
[id(5), helpstring("属性 nTcpPort")] LONG nTcpPort;//取得控件绑定的TCP端口
[id(6), helpstring("属性 nUdpPort")] LONG nUdpPort;//取得控件绑定的UDP端口
methods:
[id(DISPID_ABOUTBOX)] void AboutBox();
[id(1), helpstring("方法StartTalk")] LONG StartTalk(BSTR bstrIP,LONG nPort,LONG nUdpPort); //开始语音对话
[id(2), helpstring("方法EndTalk")] LONG EndTalk(void);//结束语音对话!
[id(3), helpstring("方法GetCtrlInfo")] LONG GetCtrlInfo(BSTR *bstrIP);
};
本文配套源码
更多精彩
赞助商链接