一个对Winsock 完成端口模型封装的类 |
在WINDOWS下进行网络服务端程序开发,毫无疑问,Winsock 完成端口模型是最高效的。Winsock的完成端口模型借助Widnows的重叠IO和完成端口来实现,完成端口模型懂了之后是比较简单的,但是要想掌握Winsock完成端口模型,需要对WINDOWS下的线程、线程同步,Winsock API以及WINDOWS IO机制有一定的了解。如果不了解,推荐几本书:《Inside Windows 2000,《WINDOWS核心编程》,《WIN32多线程程序设计》、《WINDOWS网络编程技术》。在去年,我在C语言下用完成端口模型写了一个WEBSERVER,前些天,我决定用C++重写这个WEBSERVER,给这个WEBSERVER增加了一些功能,并改进完成端口操作方法,比如采用AcceptEx来代替accept和使用LOOKASIDE LIST来管理内存,使得WEBSERVER的性能有了比较大的提高。
在重写的开始,我决定把完成端口模型封装成一个比较通用的C++类,针对各种网络服务端程序的开发,只要简单地继承这个类,改写其中两个虚拟函数就能满足各种需要。到昨天为止,WEBSERVER重写完毕,我就写了这篇文章对完成端口模型做一个总结,并介绍一下我的这个类。
DEMO就是一个ECHOSERVER,记得使用Release模式编译。
参见文档
<a href=http://www.lihuasoft.net/article/show.asp?id=772>一个对Winsock 完成端口模型封装的类</a> |
|
FTP客户端软件 |
一个用Winsock做的FTP客户端软件,功能很全。全中文注释。 |
|
类似于网络蚂蚁的下载软件 |
一个用Winsock控件做的下载软件,类似于网络蚂蚁,全中文注释,很适于初学者。 |
|
WinSock Spy, 对于 Debuginng Winsock 程序 |
追综所有的数据发送在两个WinSock 程序间。 |
|
TCP/IP 文件传输由经 Winsock |
它演示了如何经Winsock传输文件。它有两个程序:一个客户机程序和一个服务器程序。
|
|
发送带附件的Email |
使用Winsock控件发送带附件的EMAIL程序,附件使用Base64编码。 |
|
VBScript 编写多用户网络游戏 |
远端登录入网络服务器的这一个例子中使用 ScriptControl(来自微软网站) 、可扩展标示语言数据分析和 Winsock 提供的一个完整脚本应用。一但启动服务器就不必更改代码。一个基本的框架提供网络元素和数据存储来让脚本控制运行以远端登入为基础的操作。 现在结构是最基本的,但是这可以扩展。建议你理解好这一个应用的分类。 |
|
简单的 SMTP E-mail 程序 |
这是一个简单的 SMTP E-mail 程序,我建立应用于5个不同样本代码。其中一个只应用于Winsock 控制器。
|
|
使用Winsock下载文件 |
使用Winsock下载文件 |
|
一个只使用Winsock控件实现的Telnet程序 |
一个只使用Winsock控件实现的Telnet程序 |
|
简单的 Bulk E-mail Sender |
用winsock 控制器和 SMTP 协议发送e-mail 给一个收件人列表中自定义的用户。
|
|
封装winsock的多线程的类 |
Contains:
TWSocket - Basic winsock component. Fully event-driven and multi-thread safe. It supports TCP, UDP and can be used to build both client and server programs.
TSmtpCli - SMTP client protocol support. Used to send mail to a mail server.
TPop3Cli - POP3 client protocol support. Used to retreive mail form a mail server.
TFtpCli - FTP client protocol support. Used to send and receive files to/from an FTP server. Also able to do directory and file handling.
THttpCli - HTTP protocol support. Used to access any WEB server for getting or posting data. Proxy support.
TTnCnx - TELNET client protocol support.
TEmulVT - ANSI terminal emulation (like a TMemo but with ansi escape sequences interpetation).
TTnEmulVT - TELNET and ANSI terminal emulation combined into a single component. You can build a full telnet client program in only a few lines of code.
TPing - ICMP ping support. You can ping a host and get the resulting info.
封装winsock的多线程的类
|
|
通过Winsock控件建立的客户、服务器文件传输程序。 |
通过Winsock控件建立的客户、服务器文件传输程序。 |
|
CSocketMaster - Winsock API 执行类 |
CSocketMaster class 是一个winsock 控制器代替者。它和winsock有着相同的界面和功能,不用担心它的使用问题。你如果知道怎样应用CSocketMaster你也就知道如果用winsock了。
|
|
适用于局域网的聊天 |
这是一个简单的适用于局域网的聊天软件。它包括一些附加的功能,例如发送文件和关闭你的计算机。这个程序要求有MS WinSock 控制器,它包含在ZIP archive里。
|
|