- 1、本文档共55页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
局域网的语音通系统论文
局域网的语音通信系统论文
1.6万字+论文+开题报告+英文翻译+文献综述?winsock编程原理在WINDOWS95/98,WINDOWSNT进行WINSOCK开发使用的编程语言有很多,VC++,JAVA,DELPHI,VB等。其中VC时使用最普遍,和WINSOCK结合最紧密的。并且VC++对原来的WindowsSockets库函数进行了一系列封装,继而产生了CAsynSocket、CSocket、CSocketFile等类,它们封装着有关Socket的各种功能,是编程变得更加简单。但如果你是一个WINSOCK编程的初学者,那么建议你在一开始还是学习WINSOCK最基本的API函数进行编程,这样可以大大加深对WINSOCK的了解,对将来很有好处。
在VC中进行WINSOCK的API编程开发,需要使用到下面三个文件:
1)WINSOCK.H: 这是WINSOCK API的头文件;2) WSOCK32.LIB: WINSOCK API连接库文件。在使用中,一点要把它作为项目的非缺省的连接库包含到项目文件中去;3)WINSOCK.DLL: WINSOCK的动态连接库,位于WINDOWS的安装目录下。
一般在使用中,面向连接协议的SOCKET编程模型应用最为广泛,因为面向连接协议提供了一系列的数据纠错功能,可以保证在网络上传输的数据及时、无误地到达对方。 总的来说,使用SOCKET接口(面向连接或无连接)进行网络通信时,必须按下面简单的四步进行处理:程序必须建立一个SOCKET;程序必须按要求配置此SOCKET。也就是说,程序要么将此SOCKET连接到远方的主机上,要么给此SOCKET指定一个本地协议端口;程序必须按要求通过此SOCKET发送和接收数据;程序必须关闭此SOCKET。
在MFC中MS为套接口提供了相应的类CAsyncSocket和CSocket,CAsyncSocket提供基于异步通信的套接口封装功能,CSocket则是由CAsyncSocket派生,提供更加高层次的功能,例如可以将套接口上发送和接收的数据和一个文件对象(CSocketFile)关联起来,通过读写文件来达到发送和接收数据的目的,此外CSocket提供的通信为同步通信,数据未接收到或是未发送完之前调用不会返回。此外通过MFC类开发者可以不考虑网络字节顺序和忽略掉更多的通信细节。
创建CAsyncSocket对象,可以调用下列函数:A)BOOL CAsyncSocket::Create UINT nSocketPort 0, int nSocketType SOCK_STREAM, long lEvent FD_READ FD_WRITE FD_OOB FD_ACCEPT FD_CONNECT FD_CLOSE, LPCTSTR lpszSocketAddress NULL 通过指明lEvent所包含的标记来确定需要异步处理的事件,对于指明的相关事件的相关函数调用都不需要等待完成后才返回,函数会马上返回然后在完成任务后发送事件通知,并利用重载以下成员函数来处理各种网络事件:
标记?事件?需要重载的函数?FD_READ?有数据到达时发生?void OnReceive int nErrorCode ;?FD_WRITE?有数据发送时产生?void OnSend int nErrorCode ;?FD_OOB?收到外带数据时发生?void OnOutOfBandData int nErrorCode ;?FD_ACCEPT?作为服务端等待连接成功时发生?void OnAccept int nErrorCode ;?FD_CONNECT?作为客户端连接成功时发生?void OnConnect int nErrorCode ;?FD_CLOSE?套接口关闭时发生?void OnClose int nErrorCode ;?
我们看到重载的函数中都有一个参数nErrorCode,为零则表示正常完成,非零则表示错误。通过int CAsyncSocket::GetLastError 可以得到错误值。
下面我们看看套接口类所提供的一些功能,通过这些功能我们可以方便的建立网络连接和发送数据。
BOOL CAsyncSocket::Create UINT nSocketPort 0, int nSocketType SOCK_STREAM, long lEvent FD_READ FD_WRITE FD_OOB FD_ACCEPT FD_CONNECT FD_CLOSE, LPCTSTR lpszSocketAddress NULL ;用于创建一个本地套接
您可能关注的文档
- 对牟宗三诠释朱中和说的方法论反省.doc
- 对网络虚拟财产纷的法律思考---张墨.doc
- 对计算机网络体结构的认识.doc
- 对议论文写作及学的匡正.doc
- 对近代自然观和类中心主义的再思考.doc
- 对通信工程的初认识.docx
- 导光系统的现状应用展望.doc
- 寿安中学高二年周考题.doc
- 将AutoCA矢量图转换到位图软件几种方法的比较.doc
- 将CMCC网络享给路由器.doc
- 《旅游新媒体营销》课件——内容定位.pptx
- 《机上医疗救护》课件——7.5 机上突发公共卫生事件处置程序.pptx
- 《旅游新媒体营销》课件——新媒体营销策略——饥饿营销.pptx
- 《旅游新媒体营销》课件——新媒体营销策略——跨界营销.pptx
- 《旅游新媒体营销》课件——新媒体营销策略——知识营销.pptx
- 《旅游新媒体营销》课件——新媒体营销的发展趋势.pptx
- 《旅游新媒体营销》课件——新媒体营销的概念与特点..pptx
- 《旅游新媒体营销》课件——新媒体营销的核心法则.pptx
- 《旅游新媒体营销》课件——新媒体营销策略——软文营销.pptx
- 《淮阳泥泥狗文创产品设计》——4-淮阳“泥泥狗”文创产品设计(设计类型).pptx
文档评论(0)