最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c++ 端口掃描程序?qū)崿F(xiàn)案例

 更新時間:2017年05月16日 08:08:59   投稿:jingxian  
下面小編就為大家?guī)硪黄猚++ 端口掃描程序?qū)崿F(xiàn)案例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

第一、原理

端口掃描的原理很簡單,就是建立socket通信,切換不通端口,通過connect函數(shù),如果成功則代表端口開發(fā)者,否則端口關(guān)閉。

所有需要多socket程序熟悉,本內(nèi)容是在window環(huán)境下的

第二、單線程實現(xiàn)方式

// PortScanf.cpp : 定義控制臺應(yīng)用程序的入口點。
//
#define WIN32_LEAN_AND_MEAN
#include "stdafx.h"
#include <WinSock2.h>
#pragma comment(lib, "Ws2_32")
int scant(char *Ip, int StartPort, int EndPort)
{ 
  WSADATA wsa;
  SOCKET s;
  struct sockaddr_in server;
 
  int CurrPort;  //當(dāng)前端口
  int ret;
 
  WSAStartup(MAKEWORD(2, 2), &wsa);  //使用winsock函數(shù)之前,必須用WSAStartup函數(shù)來裝入并初始化動態(tài)連接庫
 
  server.sin_family = AF_INET;  //指定地址格式,在winsock中只能使用AF_INET
  server.sin_addr.s_addr = inet_addr(Ip); //指定被掃描的IP地址
 
  for (CurrPort = StartPort; CurrPort <= EndPort; CurrPort++)
  {
    s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
    server.sin_port = htons(CurrPort); //指定被掃描IP地址的端口號
    ret = connect(s, (struct sockaddr *)&server, sizeof(server)); //連接
 
    if (0 == ret) //判斷連接是否成功
    {
      printf("%s:%d Success O(∩_∩)O~~\n", Ip, CurrPort);
      closesocket(s);
    }
    else {
      printf("%s:%d Failed\n", Ip, CurrPort);
    }
  } 
  printf("Cost time:%f second\n", CostTime); //輸出掃描過程中耗費的時間
  WSACleanup();  //釋放動態(tài)連接庫并釋放被創(chuàng)建的套接字
  return 1;
}
 
int main()
{
  scant("127.0.0.1", 75, 100);
   
  return 0;
}

第三、多線程實現(xiàn)方式

由于單線程執(zhí)行速度有些慢,我們加入多線程運行,

typedef struct _tagValue
{
  int start;
  int end;
}PortNums;
 
void _cdecl beginThreadFunc1(LPVOID lpParam) {
  PortNums *pnInt = (PortNums*)lpParam;
  scan("127.0.0.1", pnInt->start, pnInt->end);
}
 
int a()
{
  PortNums m1;
  m1.start = 70;
  m1.end = 500;
 
  PortNums m2;
  m2.start = 501;
  m2.end = 1000;
 
  _beginthread(beginThreadFunc1, 0, &m1);
  _beginthread(beginThreadFunc1, 0, &m2);
 
 
  getchar();
  return 0;
}

注意需要#include<process.h>

以上這篇c++ 端口掃描程序?qū)崿F(xiàn)案例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++快速排序及優(yōu)化方案詳解

    C++快速排序及優(yōu)化方案詳解

    這篇文章主要介紹了C++快速排序及優(yōu)化方案詳解,快速排序是一種常用的排序算法,它通過選擇一個基準(zhǔn)元素,將數(shù)組分成兩個子數(shù)組,其中一個子數(shù)組的所有元素都小于基準(zhǔn)元素,另一個子數(shù)組的所有元素都大于基準(zhǔn)元素,需要的朋友可以參考下
    2023-10-10
  • Qt+FFMPEG實現(xiàn)循環(huán)解碼詳解

    Qt+FFMPEG實現(xiàn)循環(huán)解碼詳解

    這篇文章主要為大家詳細介紹了如何利用Qt+FFMPEG實現(xiàn)循環(huán)解碼功能,文中的示例代碼講解詳細,對我們學(xué)習(xí)Qt有一定幫助,需要的可以參考一下
    2022-08-08
  • C++?二叉樹的實現(xiàn)超詳細解析

    C++?二叉樹的實現(xiàn)超詳細解析

    二叉樹可以簡單理解為對于一個節(jié)點來說,最多擁有一個上級節(jié)點,同時最多具備左右兩個下級節(jié)點的數(shù)據(jù)結(jié)構(gòu)。本文將詳細介紹一下C++中二叉樹的實現(xiàn)和遍歷,需要的可以參考一下
    2022-03-03
  • C語言動態(tài)鏈表實現(xiàn)學(xué)生學(xué)籍管理系統(tǒng)

    C語言動態(tài)鏈表實現(xiàn)學(xué)生學(xué)籍管理系統(tǒng)

    這篇文章主要為大家詳細介紹了C語言動態(tài)鏈表實現(xiàn)學(xué)生學(xué)籍管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • C++17使用折疊表達式實現(xiàn)一個IsAllTrue函數(shù)的過程

    C++17使用折疊表達式實現(xiàn)一個IsAllTrue函數(shù)的過程

    本文介紹了利用C++17特性實現(xiàn)IsAllTrue函數(shù)的方法,詳細講解了從基于初始化列表的初級版本到使用折疊表達式和類型萃取的高級優(yōu)化版本,需要的朋友參考下吧
    2024-09-09
  • 基于C語言實現(xiàn)的掃雷游戲代碼

    基于C語言實現(xiàn)的掃雷游戲代碼

    這篇文章主要介紹了基于C語言實現(xiàn)的掃雷游戲代碼,對于學(xué)習(xí)游戲開發(fā)的朋友有一定的借鑒價值,需要的朋友可以參考下
    2014-08-08
  • C語言中的運算符和結(jié)合性問題

    C語言中的運算符和結(jié)合性問題

    這篇文章主要介紹了C語言中的運算符和結(jié)合性問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • C語言浮點函數(shù)中的modf和fmod詳解

    C語言浮點函數(shù)中的modf和fmod詳解

    這篇文章主要為大家詳細介紹了C語言浮點函數(shù)中的modf和fmod,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++中std::chrono時間庫的全面解析

    C++中std::chrono時間庫的全面解析

    C++?std::chrono時間庫是C++標(biāo)準(zhǔn)庫提供的一個時間處理庫,提供了一個方便、靈活和精確的時間處理工具,下面小編就帶大家深入了解一下std::chrono時間庫的使用吧
    2023-10-10
  • C++設(shè)計模式編程中的迭代器模式應(yīng)用解析

    C++設(shè)計模式編程中的迭代器模式應(yīng)用解析

    這篇文章主要介紹了C++設(shè)計模式編程中的迭代器模式應(yīng)用解析,迭代器模式注重對集合中元素的遍歷而不使其暴露,需要的朋友可以參考下
    2016-03-03

最新評論

青阳县| 蓝田县| 宜宾县| 齐河县| 雅安市| 云南省| 达州市| 平乡县| 桂平市| 喀什市| 醴陵市| 巴里| 简阳市| 大石桥市| 花垣县| 饶平县| 元氏县| 如皋市| 阿城市| 庆云县| 辉南县| 永济市| 崇左市| 威海市| 新疆| 固安县| 高密市| 朔州市| 大安市| 金沙县| 云阳县| 黄梅县| 塔河县| 永善县| 昌黎县| 贵阳市| 满洲里市| 江门市| 泰来县| 惠来县| 德阳市|