资源简介
使用VS2010开发环境,C++语言编写的Telnet客户端,是个控制台程序,目前没有做心跳,需要的自己加上就可以了,代码简洁,就几个面向对象的类,希望对你有参考价值。

代码片段和文件信息
// ProtocolRx.cpp: implementation of the CProtocolRx class.
//
//////////////////////////////////////////////////////////////////////
#include “stdafx.h“
#include “Telnet.h“
#include “ProtocolRx.h“
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
extern HANDLE stdin1;
extern HANDLE stdout1;
extern HANDLE stderr1;
void nvt(SOCKET serverunsigned char data);
enum _ansi_state
{
as_normal
as_esc
as_esc1
};
static int sa = FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE;
char codebuf[256];
unsigned char codeptr;
#define NUM_CODEC 6
typedef void (*LPCODEPROC)(char*);
void ansi_set_screen_attribute(char* buffer);
void ansi_set_position(char* buffer);
void ansi_erase_screen(char* buffer);
void ansi_move_up(char* buffer);
void ansi(SOCKET serverunsigned char data);
void ansi_erase_line(char* buffer);
void ddww_error(SOCKET server_verb verb_option option);
void ddww_echo(SOCKET server_verb verb _option option);
void ddww_supp(SOCKET server_verb verb_option option); //Suppress GA
void ddww_term(SOCKET server_verb verb_option option); //Subnegotiate terminal type
void sbproc_term(SOCKET serverunsigned char data);
struct
{
unsigned char cmd;
LPCODEPROC proc;
} codec[NUM_CODEC] = {
{‘m‘ansi_set_screen_attribute}
{‘H‘ansi_set_position}
{‘K‘ansi_erase_line}
{‘J‘ansi_erase_screen}
{‘A‘ansi_move_up}
{00}
};
CProtocolRx::CProtocolRx()
{
}
CProtocolRx::~CProtocolRx()
{
}
#define NUL 0
#define BEL 7
#define BS 8
#define HT 9
#define LF 10
#define VT 11
#define FF 12
#define CR 13
#define SE 240
#define NOP 241
#define DM 242
#define BRK 243
#define IP 244
#define AO 245
#define AYT 246
#define EC 247
#define EL 248
#define GA 249
#define SB 250
#define WILL 251
#define WONT 252
#define DO 253
#define DONT 254
#define IAC 255
int option_error(_verb_optionintSOCKET);
typedef void(*LPOPTIONPROC)(SOCKET_verb_option);
typedef void(*LPDATAPROC)(SOCKETunsigned char data);
inline void yesreply(SOCKET server _verb verb_option option)
{
unsigned char buf[3];
buf[0] = IAC;
buf[1] = (verb==verb_do)?WILL:(verb==verb_dont)?WONT:(verb==verb_will)?DO:DONT;
buf[2] = (unsigned char)option;
send(server(char*)buf30);
}
inline void noreply(SOCKET server _verb verb_option option)
{
unsigned char buf[3];
buf[0] = IAC;
buf[1] = (verb==verb_do)?WONT:(verb==verb_dont)?WILL:(verb==verb_will)?DONT:DO;
buf[2] = (unsigned char)option;
send(server(char*)buf30);
}
inline void askfor(SOCKET server _verb verb_option option)
{
unsigned char buf[3];
buf[0] = IAC;
buf[1] = (unsigned char)verb
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-02-18 11:36 C++写的telnet客户端,VS2010编译通过\
目录 0 2016-02-18 16:53 C++写的telnet客户端,VS2010编译通过\Telnet\
目录 0 2016-02-18 16:54 C++写的telnet客户端,VS2010编译通过\Telnet\Debug\
目录 0 2016-02-18 16:54 C++写的telnet客户端,VS2010编译通过\Telnet\ipch\
文件 13539 2016-02-18 16:51 C++写的telnet客户端,VS2010编译通过\Telnet\ProtocolRx.cpp
文件 2810 1998-12-26 10:41 C++写的telnet客户端,VS2010编译通过\Telnet\ProtocolRx.h
文件 447 1998-12-24 05:32 C++写的telnet客户端,VS2010编译通过\Telnet\Resource.h
文件 1508 1998-12-24 07:27 C++写的telnet客户端,VS2010编译通过\Telnet\SocketDx.cpp
文件 618 1998-12-24 06:08 C++写的telnet客户端,VS2010编译通过\Telnet\SocketDx.h
文件 1382 1998-12-26 10:40 C++写的telnet客户端,VS2010编译通过\Telnet\SocketRx.cpp
文件 699 1998-12-24 07:54 C++写的telnet客户端,VS2010编译通过\Telnet\SocketRx.h
文件 1332 1998-12-26 10:26 C++写的telnet客户端,VS2010编译通过\Telnet\SocketTx.cpp
文件 614 1998-12-24 07:53 C++写的telnet客户端,VS2010编译通过\Telnet\SocketTx.h
文件 293 1998-12-24 05:32 C++写的telnet客户端,VS2010编译通过\Telnet\StdAfx.cpp
文件 1126 1998-12-24 06:05 C++写的telnet客户端,VS2010编译通过\Telnet\StdAfx.h
文件 243 1998-12-24 06:11 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.clw
文件 1689 2001-07-29 10:12 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.cpp
文件 4893 1998-12-24 08:53 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.dsp
文件 535 1998-12-24 05:32 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.dsw
文件 110679 2001-07-29 10:14 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.exe
文件 326 1998-12-24 05:32 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.h
文件 1458 1998-12-24 05:32 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.rc
文件 878 2016-02-18 16:50 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.sln
文件 11776 2016-02-18 16:53 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.suo
文件 7864 2016-02-18 16:50 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.vcxproj
文件 2354 2016-02-18 16:50 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.vcxproj.filters
文件 143 2016-02-18 16:50 C++写的telnet客户端,VS2010编译通过\Telnet\Telnet.vcxproj.user
相关资源
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- 利用C++哈希表的方法实现电话号码查
- 移木块游戏,可以自编自玩,vc6.0编写
- C++纯文字DOS超小RPG游戏
- VC++MFC小游戏实例教程(实例)+MFC类库
- 连铸温度场计算程序(C++)
- 6自由度机器人运动学正反解C++程序
- Em算法(使用C++编写)
- libstdc++-4.4.7-4.el6.i686.rpm
- VC++实现CMD命令执行与获得返回信息
- 白话C++(全)
- C++标准库第1、2
- 大数类c++大数类
- C++语言编写串口调试助手
- c++素数筛选法
- C++ mqtt 用法
- 商品库存管理系统 C++ MFC
- c++ 多功能计算器
- C++17 In Detail
- 嵌入式QtC++编程课件
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- socket客户端.c
- socket服务端.c
- FTP客户端源码(c++)
- socket tcp应用
评论
共有 条评论