亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ch20.htm

?? VisualC21天自學(xué)教程.rar 英文經(jīng)典教程
?? HTM
?? 第 1 頁 / 共 4 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"><HTML><HEAD>	<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1"><SCRIPT LANGUAGE="JavaScript"><!--function popUp(pPage) { var fullURL = document.location; var textURL = fullURL.toString(); var URLlen = textURL.length; var lenMinusPage = textURL.lastIndexOf("/"); lenMinusPage += 1; var fullPath = textURL.substring(0,lenMinusPage); popUpWin = window.open('','popWin','resizable=yes,scrollbars=no,width=525,height=394'); figDoc= popUpWin.document; zhtm= '<HTML><HEAD><TITLE>' + pPage + '</TITLE>'; zhtm += '</head>'; zhtm += '<BODY bgcolor="#FFFFFF">'; zhtm += '<IMG SRC="' + fullPath + pPage + '">'; zhtm += '<P><B>' + pPage + '</B>'; zhtm += '</BODY></HTML>'; window.popUpWin.document.write(zhtm); window.popUpWin.document.close(); // Johnny Jackson 4/28/98 }//-->                                                                </SCRIPT><link rel="stylesheet" href="/includes/stylesheets/ebooks.css">	<META NAME="GENERATOR" Content="Symantec Visual Page Mac 1.1.1">	<TITLE>Teach Yourself Visual C++ 6 in 21 Days -- Ch 20 -- Internet Applications and Network Communications</TITLE></HEAD><BODY TEXT="#000000" BGCOLOR="#FFFFFF"><H1 ALIGN="CENTER"><IMG SRC="../button/sams.gif" WIDTH="171" HEIGHT="66" ALIGN="BOTTOM"BORDER="0"><BR>Teach Yourself Visual C++ 6 in 21 Days</H1><CENTER><P><A HREF="../ch19/ch19.htm"><IMG SRC="../button/previous.gif" WIDTH="128" HEIGHT="28"ALIGN="BOTTOM" ALT="Previous chapter" BORDER="0"></A><A HREF="../ch21/ch21.htm"><IMGSRC="../button/next.gif" WIDTH="128" HEIGHT="28" ALIGN="BOTTOM" ALT="Next chapter"BORDER="0"></A><A HREF="../index.htm"><IMG SRC="../button/contents.gif" WIDTH="128"HEIGHT="28" ALIGN="BOTTOM" ALT="Contents" BORDER="0"></A> <HR></CENTER><H1 ALIGN="CENTER">- 20 -<BR>Internet Applications and Network Communications</H1><H1></H1><UL>	<LI><A HREF="#Heading1">How Do Network Communications Work?</A>	<UL>		<LI><A HREF="#Heading2">Sockets, Ports, and Addresses</A>		<LI><A HREF="#Heading3">Creating a Socket</A>		<LI><A HREF="#Heading4">Making a Connection</A>		<LI><A HREF="#Heading5">Sending and Receiving Messages</A>		<LI><A HREF="#Heading6">Closing the Connection</A>		<LI><A HREF="#Heading7">Socket Events</A>		<LI><A HREF="#Heading8">Detecting Errors</A>	</UL>	<LI><A HREF="#Heading9">Building a Networked Application</A>	<UL>		<LI><A HREF="#Heading10">Creating the Application Shell</A>		<LI><A HREF="#Heading11">Inheriting from the CAsyncSocket Class</A>		<LI><A HREF="#Heading12">Connecting the Application</A>		<LI><A HREF="#Heading13">Sending and Receiving</A>		<LI><A HREF="#Heading14">Ending the Connection</A>	</UL>	<LI><A HREF="#Heading15">Summary</A>	<LI><A HREF="#Heading16">Q&amp;A</A>	<LI><A HREF="#Heading17">Workshop</A>	<UL>		<LI><A HREF="#Heading18">Quiz</A>		<LI><A HREF="#Heading19">Exercise</A>	</UL></UL><P><HR SIZE="4"><BR>Thanks in part to the explosion in popularity of the Internet, more applicationshave the ability to communicate with other applications over networks, includingthe Internet. With Microsoft building networking capabilities into its operatingsystems, starting with Windows NT and Windows 95, these capabilities are becomingcommonplace in all sorts of applications.</P><P>Some applications perform simple networking tasks such as checking with a Website to see whether there are any updates to the program and giving the user theoption of updating her copy of the program. Some word processing applications willformat documents as Web pages, giving the user the option of loading the pages ontothe Web server. You've got computer games that allow the user to play against anotherperson halfway around the world instead of just competing against the game itself.</P><P>Applications can have any number of networking functions, and they all are builtaround the Winsock interface. If you know and understand how to program using theWinsock interface and the MFC Winsock classes, this entire realm of application programmingis open to you, expanding your programming options considerably. Today, you willlearn</P><P><UL>	<LI>How applications use the Winsock interface to perform network communications	between two or more computers.	<P>	<LI>The difference between a client and a server application and the role each plays	in establishing a communications link.	<P>	<LI>How the MFC Winsock classes simplify the process of writing Internet applications.	<P>	<LI>How you can create your own Winsock class, descended from the MFC Winsock classes,	to easily build an event-driven, networking application.</UL><H2><A NAME="Heading1"></A>How Do Network Communications Work?</H2><P>Most applications that communicate over a network, whether it's the Internet ora small office network, use the same principles and functionality to perform theircommunication. One application sits on a computer, waiting for another applicationto open a communication connection. This application is &quot;listening&quot; forthis connection request, much like you listen for the phone to ring if you are expectingsomeone to call.</P><P>Meanwhile, another application, most likely on another computer (but not necessarily),tries to connect to the first application. This attempt to open a connection is similarto calling someone on the telephone. You dial the number and hope that the otherperson is listening for the phone on the other end. As the person making the call,you have to know the phone number of the person you are calling. If you don't knowthe phone number, you can look it up using the person's name. Likewise, the applicationtrying to connect to the first application has to know the network location, or address,of the first application.</P><P>Once the connection is made between the two applications, messages can pass backand forth between the two applications, much like you can talk to the person on theother end of the phone. This connection is a two-way communications channel, withboth sides sending information, as shown in Figure 20.l.</P><P><A HREF="javascript:popUp('20fig01.gif')"><B>FIGURE 20.1.</B></A><B> </B><I>Thebasic socket connection process.</I></P><P>Finally, once one or both sides have finished their sides of the conversation,the connection is closed, much like you hang up the phone after you have finishedtalking to the person you called. Once the connection is closed from either side,the other side can detect it and close its side, just like you can tell if the personon the other end of the phone has hung up on you or if you've been disconnected bysome other means. This is a basic explanation of how network communications workbetween two or more applications.</P><BLOCKQUOTE>	<P><HR><STRONG>NOTE:</STRONG> This is a basic description of how network communications work with	the TCP/IP network protocol, which is the primary network protocol over the Internet.	Many other network protocols use a subtle variation on this description. Other protocols,	such as the UDP protocol, are more like radio broadcasts, where there is no connection	between the two applications; one sends messages, and the other is responsible for	making sure that it receives all of the messages. These protocols are more involved	than we have the luxury to discuss today. If you want to learn more about network	protocols and how they work, many books cover this one topic and look at the various	Internet applications and how they communicate over the connections they establish.<HR></BLOCKQUOTE><H3><A NAME="Heading2"></A>Sockets, Ports, and Addresses</H3><P>The basic object used by applications to perform most network communications iscalled a socket. Sockets were first developed on UNIX at the University of Californiaat Berkley. Sockets were designed so that most network communications between applicationscould be performed in the same way that these same applications would read and writefiles. Sockets have progressed quite a bit since then, but the basics of how theywork are still the same.</P><P>During the days of Windows 3.<I>x</I>, before networking was built into the Windowsoperating system, you could buy the network protocols required for network communicationsfrom numerous different companies. Each of these companies had a slightly differentway that an application performed network communications. As a result, any applicationsthat performed network communications had a list of the different networking softwarethat the application would work with. Many application developers were not happywith this situation. As a result, all the networking companies, including Microsoft,got together and developed the Winsock (Windows Sockets) API. This provided all applicationdevelopers with a consistent API to perform all network communications, regardlessof the networking software used.</P><P>When you want to read or write a file, you must use a file object to point tothe file. Although this was hidden from you in most of the Visual C++ applicationsso far, with the ActiveX control you created yesterday, you had to work through thesteps of creating the file object for reading and writing. A socket is similar; itis an object used to read and write messages that travel between applications.</P><P>Making a socket connection to another application does require a different setof information than opening a file. To open a file, you need to know the file's nameand location. To open a socket connection, you need to know the computer on whichthe other application is running and the port on which it's listening. A port islike a phone extension, and the computer address is like the phone number. If youcall someone at a large office building, you may dial the main office number, butthen you need to specify the extension number. Likewise, ports are used to routenetwork communications (see Figure 20.2). As with the phone number, there are meansof looking up the port number, if you don't already know what it is, but this requiresyour computer to be configured with the information about which port the connectingapplication is listening on. If you specify the wrong computer address or port number,you may get a connection to a different application; with making the phone call,someone other than the person you called may answer the phone call. You also maynot get an answer at all if there is no application listening at the other end.</P><BLOCKQUOTE>	<P><HR><STRONG>NOTE:</STRONG> Only one application may be listening on any specific port on a single	computer. Although numerous applications may listen for connection requests on a	single computer at the same time, each of these applications must listen on a different	port.<HR></BLOCKQUOTE><H3><A NAME="Heading3"></A>Creating a Socket</H3><P>When you build applications with Visual C++, you can use the MFC Winsock classesto add network communications capabilities with relative ease. The base class, CAsyncSocket,provides complete, event-driven socket communications. You can create your own descendentsocket class that captures and responds to each of these events.</P><BLOCKQUOTE>	<P><HR><STRONG>CAUTION:</STRONG> This discussion of socket communications assumes that you check	the AppWizard option for adding support for Windows Sockets. This adds supporting	functionality to the application that is not discussed here.<HR></BLOCKQUOTE><P><A HREF="javascript:popUp('20fig02.gif')"><B>FIGURE 20.2.</B></A><B> </B><I>Portsare used to route network communications to the correct application.</I></P><P>To create a socket that you can use in your application, the first thing you needto do is declare a variable of CAsyncSocket (or your descendent class) as a classmember for one of the main application classes:</P><P><PRE>class CMyDlg : public CDialog{...private:    CAsyncSocket m_sMySocket;};</PRE><P>Before you can begin using the socket object, you must call its Create method.This actually creates the socket and prepares it for use. How you call the Createmethod depends on how you will be using the socket. If you will be using the socketto connect to another application, as the one placing the call (the client), thenyou do not need to pass any parameters to the Create method:</P><P><PRE>if (m_sMySocket.Create()){    // Continue on}else    // Perform error handling here</PRE><P>However, if the socket is going to be listening for another application to connectto it, waiting for the call (the server), then you need to pass at least the portnumber on which the socket should be listening:</P><P><PRE>if (m_sMySocket.Create(4000)){    // Continue on}else    // Perform error handling here</PRE><P>You can include other parameters in the Create method call, such as the type ofsocket to create, the events that the socket should respond to, and the address thatthe socket should listen on (in case the computer has more than one network card).All these options require a more thorough understanding of sockets than we'll beable to cover today.</P><P><H3><A NAME="Heading4"></A>Making a Connection</H3><P>Once you create a socket, you are ready to open a connection with it. Three stepsgo along with opening a single connection. Two of these steps take place on the server,the application listing for the connection, and the third step takes place on theclient, the one making the call.</P><P>For the client, opening the connection is a simple matter of calling the Connectmethod. The client has to pass two parameters to the Connect method: the computername, or network address, and the port of the application to connect to. The Connectmethod could be used in the following two ways:</P><P><PRE>if (m_sMySocket.Connect(&quot;thatcomputer.com&quot;, 4000)){    // Continue on}else    // Perform error handling here</PRE><P>The second form is</P><P><PRE>if (m_sMySocket.Connect(&quot;178.1.25.82&quot;, 4000)){    // Continue on}else    // Perform error handling here</PRE><P>Once the connection is made, an event is triggered to let your application knowthat it is connected or that there were problems and the connection couldn't be made.(I'll cover how these events work in the section &quot;Socket Events,&quot; laterin this chapter.)</P><P>For the server, or listening, side of the connection, the application first musttell the socket to listen for incoming connections by calling the Listen method.The Listen method takes only a single argument, which you do not need to supply.This parameter specifies the number of pending connections that can be queued, waitingfor the connection to be completed. By default this value is 5, which is the maximum.The Listen method can be called as follows:</P><P><PRE>if (m_sMySocket.Listen()){    // Continue on}else    // Perform error handling here</PRE><P>Whenever another application is trying to connect to the listening application,an event is triggered to let the application know that the connection request isthere. The listening application must accept the connection request by calling theAccept method. This method requires the use of a second CAsyncSocket variable, whichis connected to the other application. Once a socket is placed into listen mode,it stays in listen mode. Whenever connection requests are received, the listeningsocket creates another socket, which is connected to the other application. Thissecond socket should not have the Create method called for it because the Acceptmethod creates the socket. You call the Accept method as follows:</P><P><PRE>if (m_sMySocket.Accept(m_sMySecondSocket)){

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美tickling网站挠脚心| 91免费观看视频| 精品国产91洋老外米糕| 激情小说欧美图片| 国产亚洲精品久| 成人app软件下载大全免费| 国产精品久久免费看| 色综合久久精品| 日韩精品电影在线观看| 欧美一级理论性理论a| 国产乱国产乱300精品| 中文字幕亚洲综合久久菠萝蜜| bt7086福利一区国产| 一区二区三区鲁丝不卡| 91精品在线免费| 国产精品18久久久久久久久久久久 | 欧美精品一区二区三区蜜桃| 国产91精品一区二区麻豆亚洲| 亚洲国产精品黑人久久久 | 色视频欧美一区二区三区| 亚洲1区2区3区4区| 2020国产精品久久精品美国| 94-欧美-setu| 美女一区二区视频| 国产精品久久777777| 欧美日韩www| 国产自产视频一区二区三区| 樱桃国产成人精品视频| 欧美一区二区三区的| 成人午夜私人影院| 日本中文字幕一区二区视频| 日本一区免费视频| 欧美美女激情18p| 国产91在线|亚洲| 亚洲va在线va天堂| 亚洲国产成人私人影院tom| 欧美午夜精品久久久久久超碰| 国产真实乱偷精品视频免| 亚洲精品写真福利| 久久婷婷国产综合国色天香 | 在线精品亚洲一区二区不卡| 精品一区二区三区在线观看| 亚洲伦理在线精品| 久久亚洲一区二区三区明星换脸 | 555www色欧美视频| 91网站视频在线观看| 国内精品国产三级国产a久久| 亚洲国产精品久久艾草纯爱| 国产三级精品三级| 日韩一区二区免费电影| 色先锋aa成人| 成人av午夜电影| 激情综合色综合久久综合| 亚洲成a人片在线观看中文| 国产精品伦一区| 26uuu国产一区二区三区| 欧美日韩一卡二卡三卡| 91天堂素人约啪| 国产成人精品综合在线观看 | 成人福利视频网站| 国产在线视频一区二区| 五月婷婷久久综合| 亚洲人成人一区二区在线观看| 久久亚洲综合色| 337p粉嫩大胆噜噜噜噜噜91av| 欧美日韩一区二区三区不卡| 日本高清无吗v一区| 99久久精品免费看| 大陆成人av片| 丁香桃色午夜亚洲一区二区三区| 狠狠色2019综合网| 免费人成黄页网站在线一区二区| 天堂av在线一区| 午夜精品视频在线观看| 亚洲国产视频一区二区| 亚洲线精品一区二区三区八戒| 亚洲男同性恋视频| 亚洲精品久久7777| 亚洲午夜日本在线观看| 亚洲午夜日本在线观看| 五月婷婷综合激情| 蜜桃视频免费观看一区| 加勒比av一区二区| 国产乱一区二区| av一区二区不卡| 色94色欧美sute亚洲线路二| 欧美亚洲动漫精品| 67194成人在线观看| 91精品国产一区二区三区| 日韩欧美资源站| 精品av综合导航| 国产精品美女一区二区| 亚洲日本丝袜连裤袜办公室| 樱桃视频在线观看一区| 日本少妇一区二区| 国产一区二区中文字幕| 成人激情开心网| 在线观看成人小视频| 欧美美女一区二区三区| 久久先锋影音av| 中文字幕一区二区三区精华液| 亚洲一区二区三区视频在线| 日本不卡一区二区三区高清视频| 韩国v欧美v亚洲v日本v| 成人午夜伦理影院| 欧美视频在线一区| www国产精品av| 自拍偷拍国产亚洲| 日韩—二三区免费观看av| 国产精品一二三区在线| 色网站国产精品| 欧美精品一区二区久久久| 日韩一区中文字幕| 奇米一区二区三区av| 国产成人av福利| 欧美日韩久久不卡| 中文字幕乱码一区二区免费| 亚洲综合丝袜美腿| 狠狠色丁香久久婷婷综合丁香| 91女神在线视频| 日韩欧美在线一区二区三区| 国产精品久线在线观看| 日日夜夜免费精品视频| 成人精品小蝌蚪| 欧美一区二区三区免费视频| 中文在线资源观看网站视频免费不卡| 亚洲一级二级三级在线免费观看| 国产精品夜夜嗨| 欧美一区二区三区四区在线观看| 国产精品午夜久久| 蜜臀av一区二区在线观看| 色婷婷av一区| 国产亚洲精品精华液| 免费看欧美美女黄的网站| 色综合 综合色| 国产网红主播福利一区二区| 偷拍一区二区三区四区| av午夜一区麻豆| 久久精品视频一区二区| 美女在线观看视频一区二区| 欧美午夜视频网站| 中文字幕亚洲精品在线观看| 狠狠色丁香婷综合久久| 欧美一级理论性理论a| 亚洲在线视频网站| 不卡的电视剧免费网站有什么| 日韩精品一区二区三区中文精品 | 免费在线视频一区| 欧美午夜在线观看| 亚洲丝袜另类动漫二区| 国产成人自拍在线| www欧美成人18+| 韩国v欧美v亚洲v日本v| 日韩欧美国产精品一区| 亚洲成a人片在线不卡一二三区| 91美女蜜桃在线| 自拍偷拍国产精品| 99久久99久久久精品齐齐| 国产蜜臀av在线一区二区三区| 国产精品综合二区| 久久色.com| 国产精品一区二区在线播放| 欧美不卡视频一区| 久久99热这里只有精品| 欧美一级高清片在线观看| 毛片不卡一区二区| 欧美tk丨vk视频| 国产伦精品一区二区三区免费迷 | 亚洲一区二区三区影院| 在线亚洲一区二区| 亚洲一区二区三区四区五区黄 | 国产成人日日夜夜| 日本一区二区三区免费乱视频 | 国产乱人伦偷精品视频免下载| 精品国产乱码久久久久久久| 狠狠色丁香九九婷婷综合五月| 久久婷婷久久一区二区三区| 国产99一区视频免费| 国产精品久久久久毛片软件| 成人动漫一区二区| 亚洲免费在线观看视频| 欧美午夜免费电影| 日韩国产欧美在线播放| 精品国产乱子伦一区| 国产成人在线免费观看| 一区免费观看视频| 欧美性色欧美a在线播放| 奇米亚洲午夜久久精品| wwwwww.欧美系列| 99国产一区二区三精品乱码| 亚洲欧美另类久久久精品| 欧美日韩国产高清一区二区| 免费观看30秒视频久久| 国产亚洲精品资源在线26u| 91浏览器入口在线观看| 午夜av一区二区三区| 久久综合视频网| 一本久久综合亚洲鲁鲁五月天| 亚洲高清免费一级二级三级| 精品欧美一区二区三区精品久久|