NetWork(让世界变得越来越小)
文章平均质量分 73
骑在木马上的黑客
纵有疾风起,人生不言弃!
展开
-
一个简易的TCP服务器程序(将收到的字符发回给客户端)
/*-----------------------------------------------------------------运行该程序相当于启动了服务器,用telnet客户端来连接服务器。命令:telnet 127.0.0.1 9999-----------------------------------------------------------------*/#inc...原创 2018-04-17 09:27:25 · 1861 阅读 · 0 评论 -
TCP聊天室07 界面设计
服务器端的资源:resource.h#define IDC_COUNT 1001Server.rc///////////////////////////////////////////////////////////////////////////////// Dialog//CHATSERVICE DIALOGEX 0, 0, 165, 36...原创 2018-04-24 12:27:59 · 505 阅读 · 0 评论 -
TCP聊天室06 客户端程序设计(非阻塞模式)
//Client.cpp/*-------------------------------------------------------------------- 使用 TCP 协议的聊天室客户端程序(非阻塞模式)--------------------------------------------------------------------*/#include <window...原创 2018-04-24 12:17:23 · 573 阅读 · 0 评论 -
TCP聊天室05 以非阻塞方式工作的TCP聊天室客户端
以非阻塞方式工作的TCP聊天室客户端(1)WSAAsyncSelect函数——设置非阻塞模式参数含义SOCKET s套接字句柄HWND hWnd套接字的通知消息将被发往的hwnd的窗口过程unsigned int wMsg自定义通知消息的编号,如#define WM_SOCKET WM_USER+XXX中任取一个。long lEvent指定哪些通知码需要发送,可以是以下通知知的组合①FD_READ...原创 2018-04-24 12:15:20 · 426 阅读 · 0 评论 -
TCP聊天室04 客户端程序设计(阻塞模式)
//Client.cpp/*--------------------------------------------------------------------使用 TCP 协议的聊天室例子程序(客户端)--------------------------------------------------------------------*/#include <windows.h&...原创 2018-04-24 12:12:26 · 358 阅读 · 0 评论 -
TCP聊天室03 服务器端程序设计
//Server.cpp/*----------------------------------------------------------------- 使用 TCP 协议的聊天室例子程序(服务器端)-----------------------------------------------------------------*/#include <Windows.h>...原创 2018-04-24 12:08:24 · 404 阅读 · 1 评论 -
TCP聊天室02 通信协议数据包的设计
//Msg.h#pragma once#include <windows.h>#pragma comment(lib,"Ws2_32.lib")//********************************************************************//Part1:消息结构体定义//取结构体某个字段的偏移量//思路:将址址0x000000...原创 2018-04-24 12:05:01 · 1260 阅读 · 0 评论 -
TCP聊天室01 整体设计
通信协议的工作线程的设计——阻塞模式(1)设计TCP链路的通信协议 ①数据包的设计:数据包头和数据包体(可参考代码中的消息定义部分)——TLV(Type-Length-Value)组成说明数据包头包含命令代码字段和整个数据包大小的字段(这个字段长度是固定的),即使通信双方己约定好各种命令数据包的长度,可以直接从命令代码中间接地判断出该数据包的长度,但仍建议设计该结构头时,保留数据包长度这个字段...原创 2018-04-24 12:00:03 · 474 阅读 · 0 评论 -
Ping源码(C++实现,管理员身份运行)
#include<stdio.h>#include<stdlib.h>#include<winsock2.h>#include<winsock.h>#pragma comment(lib,"ws2_32.lib")//常量定义const int MAX_ICMP_PACKET_SIZE=1024;//ICMP报文最大长度(包括报头)...原创 2018-04-13 15:20:48 · 633 阅读 · 0 评论 -
网络常用函数
网络常用函数(1)和主机名相关的函数 ①gethostbyname——将主机名转成IP参数含义const char FAR *name需要解析的主机名字符串返回值——指向WinSock内部缓冲区一个HOSTENT结构体的指针。(因为一个主机名可能对应多个IP地址) 【图解HOSTENT结构体】 ②gethostbyaddr函数——将IP地址转换成主机名参数含义const char FAR *...原创 2018-04-27 12:08:01 · 363 阅读 · 0 评论