回忆.初学C语言时编写的第一个程序.TCP端口扫描器

//
//PortScan.cpp

#include < winsock2.h >
#include < windows.h >
#include < stdio.h >
#include < stdlib.h >
#include < string.h >

#pragma comment( lib, "WS2_32.lib" )

//-----------------by Chrython Chou 200532530012 ----------------------

//
//函数原型


//欢迎界面
void psTitle( char * );

//默认扫描方式
void ps1( char *, char * );

//自定义扫描方式
void ps2( char *, char *, char *, char * );

//获得主机信息
void GetLocalDate( void );

//线程函数
DWORD WINAPI psProc(
  LPVOID lpParameter   // thread data
);


//
//全局变量


//目标地址和目标端口
char g_szTargetIP[20];
int g_nTargetPort;

//默认常用探测端口
int g_nPorts[23] = {
  21,22,23,25,53,79,80,110,111,119,135,139,143,
  443,445,512,554,1080,1433,1521,2401,3306,3389
};

//端口开放数量
int g_nOpenPorts;

//
//类

//载入和释放Winsock2库的类
class CInitSock
{
public:

 CInitSock( BYTE minorVer = 2, BYTE majorVer = 2)
 {
  WORD wVersionRequested;
  WSADATA wsaData;
  int err;

  wVersionRequested = MAKEWORD( minorVer, majorVer );

  err = ::WSAStartup( wVersionRequested, &wsaData );
  if( err != 0 )
  {
   return;
  }
  if ( LOBYTE( wsaData.wVersion ) != minorVer || HIBYTE( wsaData.wVersion ) != majorVer )
  {
   ::WSACleanup();
   return;
  }
 }

 ~CInitSock()
 {
  ::WSACleanup();
 }
};

//参数输入错误类
cl

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值