From df2c61b603c27f7bba71e43b46eae9333504625f Mon Sep 17 00:00:00 2001 From: fong Date: Mon, 29 Jan 2024 18:58:54 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=88=86=E5=8F=91=20Sign?= =?UTF-8?q?ed-off-by:=20fong=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/ip_sacaner.pro.user | 199 +++++++++++++++++++------------ ip_sacaner/scan_run.cpp | 211 +++++---------------------------- ip_sacaner/scan_run.h | 21 ++-- ip_sacaner/widget.cpp | 97 ++++++--------- ip_sacaner/widget.h | 3 + 5 files changed, 201 insertions(+), 330 deletions(-) diff --git a/ip_sacaner/ip_sacaner.pro.user b/ip_sacaner/ip_sacaner.pro.user index 8776f24..98440b3 100644 --- a/ip_sacaner/ip_sacaner.pro.user +++ b/ip_sacaner/ip_sacaner.pro.user @@ -1,14 +1,14 @@ - + EnvironmentId - {948b996b-b06e-44d3-a8b0-300fbbde1481} + {c0551a2b-a2b8-4aaa-a5a1-aa196a894dec} ProjectExplorer.Project.ActiveTarget - 0 + 0 ProjectExplorer.Project.EditorSettings @@ -28,7 +28,7 @@ QmlJSGlobal - 2 + 2 UTF-8 false 4 @@ -37,7 +37,6 @@ true true 1 - false true false 0 @@ -46,73 +45,53 @@ 0 8 true - false 1 true true true - *.md, *.MD, Makefile false - true ProjectExplorer.Project.PluginSettings - - true - false - true - true - true - true - - - 0 - true -fno-delayed-template-parsing true - Builtin.BuildSystem - - true - true - Builtin.DefaultTidyAndClazy - 8 - - - - true - ProjectExplorer.Project.Target.0 - Desktop - Desktop Qt 6.2.2 MinGW 64-bit - Desktop Qt 6.2.2 MinGW 64-bit - qt.qt6.622.win64_mingw_kit - 0 - 0 - 0 + Desktop Qt 5.14.2 MinGW 64-bit + Desktop Qt 5.14.2 MinGW 64-bit + qt.qt5.5142.win64_mingw73_kit + 0 + 0 + 0 - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Debug - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Debug + C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Debug true QtProjectManager.QMakeBuildStep + true + false - + false + false true Qt4ProjectManager.MakeStep + + false + + + false - 2 + 2 Build Build ProjectExplorer.BuildSteps.Build @@ -121,37 +100,46 @@ true Qt4ProjectManager.MakeStep + + true clean + + false - 1 + 1 Clean Clean ProjectExplorer.BuildSteps.Clean 2 false - - false Debug Qt4ProjectManager.Qt4BuildConfiguration 2 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Release - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Release + C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Release true QtProjectManager.QMakeBuildStep + false + false - + false + true true Qt4ProjectManager.MakeStep + + false + + + false - 2 + 2 Build Build ProjectExplorer.BuildSteps.Build @@ -160,39 +148,46 @@ true Qt4ProjectManager.MakeStep + + true clean + + false - 1 + 1 Clean Clean ProjectExplorer.BuildSteps.Clean 2 false - - false Release Qt4ProjectManager.Qt4BuildConfiguration 0 - 0 - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Profile - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Profile + C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Profile true QtProjectManager.QMakeBuildStep + true + false - + true + true true Qt4ProjectManager.MakeStep + + false + + + false - 2 + 2 Build Build ProjectExplorer.BuildSteps.Build @@ -201,59 +196,117 @@ true Qt4ProjectManager.MakeStep + + true clean + + false - 1 + 1 Clean Clean ProjectExplorer.BuildSteps.Clean 2 false - - false Profile Qt4ProjectManager.Qt4BuildConfiguration 0 - 0 - 0 - 3 + 3 - 0 + 0 Deploy Deploy ProjectExplorer.BuildSteps.Deploy 1 - - false ProjectExplorer.DefaultDeployConfiguration - 1 + 1 + + dwarf + + cpu-cycles + + + 250 + + -e + cpu-cycles + --call-graph + dwarf,4096 + -F + 250 + + -F true + 4096 + false + false + 1000 + true + + false + false + false + false + true + 0.01 + 10 + true + kcachegrind + 1 + 25 + + 1 true - + false + true + valgrind + + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 + 11 + 12 + 13 + 14 + 2 - Qt4ProjectManager.Qt4RunConfiguration:C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro + Qt4ProjectManager.Qt4RunConfiguration:C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/ip_sacaner/ip_sacaner.pro + C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/ip_sacaner/ip_sacaner.pro + + false + false true true + false false true + + C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Debug - 1 + 1 ProjectExplorer.Project.TargetCount - 1 + 1 ProjectExplorer.Project.Updater.FileVersion diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index 1867649..799e601 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -29,35 +29,6 @@ quint32 ipv4str_to_int(const QString& ipstr) void trytry::run() { - if (ipint != 0 && ipstr != "") - { - //qDebug()<append(temp); - //qDebug() << ipstr<<":"<< ipint; - //msleep(1); - *outputbusy-=1; - } - m_socket.disconnectFromHost(); - m_socket.disconnect(); - - - //while(*barbusy); - //*barbusy+=1; - - //str.asprintf("停止 %.3f",((0.0+*nt_bar)/(0.0+*t_bar))*100); - //bt->setText(QString("%1%").arg(((0.0+*nt_bar)/(0.0+*t_bar))*100)); - //qDebug()<<*nt_bar<<"/"<<*t_bar; - //*barbusy-=1; - - //*now_thread_num-=1; - } } dispatch::dispatch() @@ -66,180 +37,54 @@ dispatch::dispatch() } -void dispatch::tray(const QString& ipstr, quint32 ipint) -{ - - - - //qDebug()<<"thread "< set_thread_num) - { - //qDebug()<<"while "<ipstr = ipstr; - try_telnet->ipint = ipint; - try_telnet->timeout = timeout; - try_telnet->output_list = output_list; - - - try_telnet->now_thread_num = &now_thread_num; - - try_telnet->t_bar=t_bar; - try_telnet->nt_bar=nt_bar; - - try_telnet->outputbusy=&outputbusy; - try_telnet->barbusy=&barbusy; - - - - //try_telnet->moveToThread(main_thread); - - connect(try_telnet,&QThread::started,[=]() - { - now_thread_num+=1; - - thread_start_lock=0; - - }); - connect(try_telnet,&QThread::finished,[=]() - { - now_thread_num-=1; - - }); - - while(thread_start_lock); - try_telnet->start(); - thread_start_lock=1; - - *nt_bar+=1; - emit dispatch_one(); -} void dispatch::run() { - - - //qDebug()<< ui->IP_list->toPlainText(); - - //the_bar->setValue(20); - - //QTcpSocket* m_socket = new QTcpSocket; - - QStringList str_ip_list = ip_list->toPlainText().split("\n"); + QStringList str_ip_list = ip_list.split("\n"); QStringList str_ips_list; - QStringList str_port_list = port_list->toPlainText().split("\n"); + QStringList str_port_list = port_list.split("\n"); QStringList str_ports_list; - - quint32 ips_num=0; quint32 ports_num=0; + QRegExp ex_ipv4 ("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); + QRegExp ex_ipv4_more("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)-((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); + QRegExp ex_ipv4_more2("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)/(0?[0-9]|1[0-9]|2[0-9]|3[0-2])$"); + QRegExp ex_ipv6 ("^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$"); + QRegExp ex_domain ("^([a-zA-Z0-9]+(-[a-zA-Z0-9]+)*\\.)+[a-zA-Z]{2,}$"); + + for (int i = 0; i < str_ip_list.size(); ++i) { - //qDebug() << str_ip_list.at(i); - str_ips_list = str_ip_list.at(i).split("-"); - if (str_ips_list.size() > 1) + if(ex_ipv4.exactMatch(str_ip_list.at(i))) + { + qDebug() << str_ip_list.at(i)<<" is ipv4"; + }else if(ex_ipv4_more.exactMatch(str_ip_list.at(i))) { - ips_num=ipv4str_to_int(str_ips_list.at(str_ips_list.size() - 1))-ipv4str_to_int(str_ips_list.at(0))+1; + qDebug() << str_ip_list.at(i)<<" is ipv4_more"; + }else if(ex_ipv4_more2.exactMatch(str_ip_list.at(i))) + { + + qDebug() << str_ip_list.at(i)<<" is ipv4_more2"; + }else if(ex_ipv6.exactMatch(str_ip_list.at(i))) + { + + qDebug() << str_ip_list.at(i)<<" is ipv6"; + }else if(ex_domain.exactMatch(str_ip_list.at(i))) + { + + qDebug() << str_ip_list.at(i)<<" is domain"; }else { - - ips_num+=1; - + qDebug() << str_ip_list.at(i)<<" don't know what is thit"; } } - - for (quint32 ii = 0; ii < str_port_list.size(); ii++) - { - str_ports_list = str_port_list.at(ii).split("-"); - if (str_ports_list.size() > 1) - { - - ports_num=str_ports_list.at(str_ports_list.size() - 1).toInt() -str_ports_list.at(0).toInt()+1; - } - else - { - - ports_num+=1; - } - } - - *t_bar=ips_num*ports_num; - *nt_bar=0; - outputbusy=0; - - \ - //qDebug()<<*t_bar; -//***************************** - for (int i = 0; i < str_ip_list.size(); ++i) - { - //qDebug() << str_ip_list.at(i); - str_ips_list = str_ip_list.at(i).split("-"); - if (str_ips_list.size() > 1) - { - - for (quint32 ips = ipv4str_to_int(str_ips_list.at(0)); ips < ipv4str_to_int(str_ips_list.at(str_ips_list.size() - 1)) + 1; ips++) - { - //qDebug() << ipv4int_to_str(ips); - for (quint32 ii = 0; ii < str_port_list.size(); ii++) - { - str_ports_list = str_port_list.at(ii).split("-"); - if (str_ports_list.size() > 1) - { - - for (quint32 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++) - { - dispatch::tray(ipv4int_to_str(ips), prots); - } - } - else - { - - dispatch::tray(ipv4int_to_str(ips), str_ports_list.at(0).toInt()); - } - } - } - } - else - { - - for (quint32 ii = 0; ii < str_port_list.size(); ii++) - { - str_ports_list = str_port_list.at(ii).split("-"); - if (str_ports_list.size() > 1) - { - - for (quint32 prots = str_ports_list.at(0).toInt(); prots < str_ports_list.at(str_ports_list.size() - 1).toInt() + 1; prots++) - { - dispatch::tray(str_ips_list.at(0), prots); - } - } - else - { - - dispatch::tray(str_ips_list.at(0), str_ports_list.at(0).toInt()); - - } - } - - } + qDebug() << ips_num; - - //for (unsigned long a = str_ips_list.at(0).toInt();a< str_ip_list.size()>1? str_ips_list.at(1).toInt()+1: str_ips_list.at(0).toInt()+1;a++) - //{ - // qDebug() << a; - //} - - } - - //sleep(1); - while(now_thread_num); emit dispatch_finish(); } diff --git a/ip_sacaner/scan_run.h b/ip_sacaner/scan_run.h index a9e72ad..0469d1a 100644 --- a/ip_sacaner/scan_run.h +++ b/ip_sacaner/scan_run.h @@ -39,22 +39,17 @@ public: dispatch(); - int set_thread_num; - int now_thread_num; - int thread_start_lock=0; + quint16 set_thread_num; + quint16 now_thread_num; + quint16 thread_start_lock=0; quint16 timeout; - quint64 *t_bar; - quint64 *nt_bar; - quint16 outputbusy=0; - quint16 barbusy=0; - //QThread* main_thread; - QPlainTextEdit* ip_list; - QPlainTextEdit* port_list; - QTextEdit* output_list; - trytry* try_telnet; + QString ip_list; + QString port_list; + + + - void tray(const QString& ipstr, quint32 ipint); void run(); signals: diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index 17d2e8e..b9ff289 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -20,81 +20,56 @@ Widget::Widget(QWidget *parent) { ui->setupUi(this); - //qDebug("hello world"); - + ui->outputlist->setReadOnly(true); + ui->stard_scan->setText("start scan"); + connect(this,&Widget::start_scan,[=]{ + scan_flag=1; + ui->IP_list->setReadOnly(true); + ui->port_list->setReadOnly(true); + ui->timeout->setReadOnly(true); + ui->threads->setReadOnly(true); + ui->stard_scan->setText("stop scan"); + dispatch_thread = new dispatch;//线程分发 + dispatch_thread->ip_list=ui->IP_list->toPlainText(); + dispatch_thread->port_list=ui->port_list->toPlainText(); + dispatch_thread->set_thread_num = ui->threads->value(); + dispatch_thread->now_thread_num = 0; + dispatch_thread->timeout = ui->timeout->value(); + connect(dispatch_thread,&dispatch::dispatch_finish,[=]{ + emit stop_scan(); + }); + dispatch_thread->start(); + }); - //main_thread = new QThread(this); - //main_thread->start(); - connect(ui->stard_scan, &QPushButton::pressed, [=]() - { + connect(this,&Widget::stop_scan,[=]{ + scan_flag=0; + ui->IP_list->setReadOnly(false); + ui->port_list->setReadOnly(false); + ui->timeout->setReadOnly(false); + ui->threads->setReadOnly(false); + ui->stard_scan->setText("start scan"); + qDebug() << "tray_exit"; + dispatch_thread->disconnect(); + dispatch_thread->terminate(); + delete dispatch_thread; + }); + connect(ui->stard_scan, &QPushButton::pressed, [=]() + { if(scan_flag==0) { - scan_flag=1; - - ui->IP_list->setReadOnly(true); - ui->port_list->setReadOnly(true); - ui->timeout->setReadOnly(true); - ui->threads->setReadOnly(true); - ui->stard_scan->setText("停止"); - - - //dispatch* dispatch_thread; - dispatch_thread = new dispatch; - - dispatch_thread->ip_list = ui->IP_list; - dispatch_thread->port_list = ui->port_list; - dispatch_thread->output_list = ui->outputlist; - - - dispatch_thread->set_thread_num = ui->threads->value(); - dispatch_thread->now_thread_num = 0; - dispatch_thread->timeout = ui->timeout->value(); - - dispatch_thread->nt_bar=&nt_bar; - dispatch_thread->t_bar=&t_bar; - - //dispatch_thread->main_thread = main_thread; - //dispatch_thread->moveToThread(main_thread); - connect(dispatch_thread, &dispatch::dispatch_one, [=]() - { - //qDebug()<<100*nt_bar/t_bar; - //ui->t_bar->setValue(100*nt_bar/t_bar); - ui->stard_scan->setText(QString("停止 %1%").arg(100*nt_bar/t_bar)); - - }); - connect(dispatch_thread, &dispatch::finished, [=]() - { - qDebug() << "dispatch_finish"; - ui->IP_list->setReadOnly(false); - ui->port_list->setReadOnly(false); - ui->timeout->setReadOnly(false); - ui->threads->setReadOnly(false); - ui->stard_scan->setText("开始扫描"); - scan_flag=0; - - disconnect(dispatch_thread); - //delete dispatch_thread; - }); - dispatch_thread->start(); + emit start_scan(); }else { - qDebug() << "tray_exit"; - dispatch_thread->terminate(); + emit stop_scan(); } });//'scan button pass' - - - - //connect(ui->IP_list,&QTextEdit::textChanged,this, &Widget::auto_edit); - - } Widget::~Widget() diff --git a/ip_sacaner/widget.h b/ip_sacaner/widget.h index 234185b..69bd838 100644 --- a/ip_sacaner/widget.h +++ b/ip_sacaner/widget.h @@ -33,6 +33,9 @@ public: quint64 t_bar=0; quint64 nt_bar=0; +signals: + void stop_scan(); + void start_scan(); private: Ui::Widget* ui; From 228f031f6c0dca3ddda609b52f458b40b698c3b8 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 29 Jan 2024 20:34:30 +0800 Subject: [PATCH 2/8] Signed-off-by: unknown --- .gitignore | 2 +- ip_sacaner/ip_sacaner.pro.user | 319 ------------------------- ip_sacaner/ip_sacaner.pro.user.6abde24 | 264 -------------------- ip_sacaner/ip_sacaner.pro.user.948b996 | 267 --------------------- ip_sacaner/ip_sacaner.pro.user.dd2c0b1 | 265 -------------------- 5 files changed, 1 insertion(+), 1116 deletions(-) delete mode 100644 ip_sacaner/ip_sacaner.pro.user delete mode 100644 ip_sacaner/ip_sacaner.pro.user.6abde24 delete mode 100644 ip_sacaner/ip_sacaner.pro.user.948b996 delete mode 100644 ip_sacaner/ip_sacaner.pro.user.dd2c0b1 diff --git a/.gitignore b/.gitignore index 404c264..d00d9c8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ build* debug .vs -*.user \ No newline at end of file +**/*.user \ No newline at end of file diff --git a/ip_sacaner/ip_sacaner.pro.user b/ip_sacaner/ip_sacaner.pro.user deleted file mode 100644 index 98440b3..0000000 --- a/ip_sacaner/ip_sacaner.pro.user +++ /dev/null @@ -1,319 +0,0 @@ - - - - - - EnvironmentId - {c0551a2b-a2b8-4aaa-a5a1-aa196a894dec} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - true - false - 0 - true - true - 0 - 8 - true - 1 - true - true - true - false - - - - ProjectExplorer.Project.PluginSettings - - - -fno-delayed-template-parsing - - true - - - - ProjectExplorer.Project.Target.0 - - Desktop Qt 5.14.2 MinGW 64-bit - Desktop Qt 5.14.2 MinGW 64-bit - qt.qt5.5142.win64_mingw73_kit - 0 - 0 - 0 - - C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Debug - - - true - QtProjectManager.QMakeBuildStep - true - - false - false - false - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - - - C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Release - - - true - QtProjectManager.QMakeBuildStep - false - - false - false - true - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - - - C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Profile - - - true - QtProjectManager.QMakeBuildStep - true - - false - true - true - - - true - Qt4ProjectManager.MakeStep - - false - - - false - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - - true - clean - - false - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - ProjectExplorer.DefaultDeployConfiguration - - 1 - - - dwarf - - cpu-cycles - - - 250 - - -e - cpu-cycles - --call-graph - dwarf,4096 - -F - 250 - - -F - true - 4096 - false - false - 1000 - - true - - false - false - false - false - true - 0.01 - 10 - true - kcachegrind - 1 - 25 - - 1 - true - false - true - valgrind - - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - - 2 - - Qt4ProjectManager.Qt4RunConfiguration:C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - - false - - false - true - true - false - false - true - - C:/Users/wuwen/Desktop/2024project/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_14_2_MinGW_64_bit-Debug - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 22 - - - Version - 22 - - diff --git a/ip_sacaner/ip_sacaner.pro.user.6abde24 b/ip_sacaner/ip_sacaner.pro.user.6abde24 deleted file mode 100644 index 955c388..0000000 --- a/ip_sacaner/ip_sacaner.pro.user.6abde24 +++ /dev/null @@ -1,264 +0,0 @@ - - - - - - EnvironmentId - {6abde24b-4ceb-4889-a962-45c24ecb0df8} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - false - true - false - 0 - true - true - 0 - 8 - true - false - 1 - true - true - true - *.md, *.MD, Makefile - false - true - - - - ProjectExplorer.Project.PluginSettings - - - true - false - true - true - true - true - - - 0 - true - - -fno-delayed-template-parsing - - true - Builtin.BuildSystem - - true - true - Builtin.DefaultTidyAndClazy - 2 - - - - true - - - - - ProjectExplorer.Project.Target.0 - - Desktop - Desktop Qt 5.12.12 MinGW 64-bit - Desktop Qt 5.12.12 MinGW 64-bit - qt.qt5.51212.win64_mingw73_kit - 0 - 0 - 0 - - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Debug - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Debug - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - - - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Release - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Release - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - - - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Profile - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Profile - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - - false - ProjectExplorer.DefaultDeployConfiguration - - 1 - - true - true - true - - 2 - - Qt4ProjectManager.Qt4RunConfiguration:C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - false - true - true - false - true - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_5_12_12_MinGW_64_bit-Debug - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 22 - - - Version - 22 - - diff --git a/ip_sacaner/ip_sacaner.pro.user.948b996 b/ip_sacaner/ip_sacaner.pro.user.948b996 deleted file mode 100644 index 4cfd186..0000000 --- a/ip_sacaner/ip_sacaner.pro.user.948b996 +++ /dev/null @@ -1,267 +0,0 @@ - - - - - - EnvironmentId - {948b996b-b06e-44d3-a8b0-300fbbde1481} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - false - true - false - 0 - true - true - 0 - 8 - true - false - 1 - true - true - true - *.md, *.MD, Makefile - false - true - - - - ProjectExplorer.Project.PluginSettings - - - true - false - true - true - true - true - - - 0 - true - - -fno-delayed-template-parsing - - true - Builtin.BuildSystem - - true - true - Builtin.DefaultTidyAndClazy - 8 - - - - true - - - - - ProjectExplorer.Project.Target.0 - - Desktop - Desktop Qt 6.2.2 MinGW 64-bit - Desktop Qt 6.2.2 MinGW 64-bit - qt.qt6.622.win64_mingw_kit - 0 - 0 - 0 - - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Debug - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Debug - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - - - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Release - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Release - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - - - 0 - C:\Users\wuwen\Desktop\tcp_ip_scan\build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Profile - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Profile - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - - false - ProjectExplorer.DefaultDeployConfiguration - - 1 - - true - true - true - - 2 - - Qt4ProjectManager.Qt4RunConfiguration:C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - C:/Users/wuwen/Desktop/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - false - true - true - false - true - C:/Users/wuwen/Desktop/tcp_ip_scan/build-ip_sacaner-Desktop_Qt_6_2_2_MinGW_64_bit-Debug - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 22 - - - Version - 22 - - diff --git a/ip_sacaner/ip_sacaner.pro.user.dd2c0b1 b/ip_sacaner/ip_sacaner.pro.user.dd2c0b1 deleted file mode 100644 index 625c961..0000000 --- a/ip_sacaner/ip_sacaner.pro.user.dd2c0b1 +++ /dev/null @@ -1,265 +0,0 @@ - - - - - - EnvironmentId - {dd2c0b1a-683d-4d88-826b-21331983c7b9} - - - ProjectExplorer.Project.ActiveTarget - 0 - - - ProjectExplorer.Project.EditorSettings - - true - false - true - - Cpp - - CppGlobal - - - - QmlJS - - QmlJSGlobal - - - 2 - UTF-8 - false - 4 - false - 80 - true - true - 1 - false - true - false - 0 - true - true - 0 - 8 - true - false - 1 - true - true - true - *.md, *.MD, Makefile - false - true - - - - ProjectExplorer.Project.PluginSettings - - - true - false - true - true - true - true - - - 0 - true - - true - Builtin.BuildSystem - - true - true - Builtin.DefaultTidyAndClazy - 4 - - - - true - - - - - ProjectExplorer.Project.Target.0 - - Desktop - macos - macos - {cfd5251c-844b-4c2f-9798-05a7388c9055} - 0 - 0 - 0 - - 0 - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Debug - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Debug - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Debug - Qt4ProjectManager.Qt4BuildConfiguration - 2 - - - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Release - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Release - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Release - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - - - 0 - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Profile - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Profile - - - true - QtProjectManager.QMakeBuildStep - false - - - - true - Qt4ProjectManager.MakeStep - - 2 - Build - Build - ProjectExplorer.BuildSteps.Build - - - - true - Qt4ProjectManager.MakeStep - clean - - 1 - Clean - Clean - ProjectExplorer.BuildSteps.Clean - - 2 - false - - false - - Profile - Qt4ProjectManager.Qt4BuildConfiguration - 0 - 0 - 0 - - 3 - - - 0 - Deploy - Deploy - ProjectExplorer.BuildSteps.Deploy - - 1 - - false - ProjectExplorer.DefaultDeployConfiguration - - 1 - - true - true - true - - 2 - - Qt4ProjectManager.Qt4RunConfiguration:/Users/wuwenfeng/Documents/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - /Users/wuwenfeng/Documents/tcp_ip_scan/ip_sacaner/ip_sacaner.pro - false - true - true - false - true - /Users/wuwenfeng/Documents/tcp_ip_scan/build-ip_sacaner-macos-Debug/ip_sacaner.app/Contents/MacOS - - 1 - - - - ProjectExplorer.Project.TargetCount - 1 - - - ProjectExplorer.Project.Updater.FileVersion - 22 - - - Version - 22 - - From ce64cc2f5b049233307f583d138c60318f546165 Mon Sep 17 00:00:00 2001 From: kevin Date: Mon, 29 Jan 2024 23:21:19 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=95=8C=E9=9D=A2?= =?UTF-8?q?=E4=B8=8E=E5=88=86=E5=8F=91=20Signed-off-by:=20kevin=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/scan_run.cpp | 53 ++++++- ip_sacaner/scan_run.h | 2 +- ip_sacaner/widget.cpp | 96 +++++++++++++ ip_sacaner/widget.ui | 296 +++++++++++++++++++++++++++++++++++++--- 4 files changed, 423 insertions(+), 24 deletions(-) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index 799e601..acac439 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -42,12 +42,12 @@ void dispatch::run() { QStringList str_ip_list = ip_list.split("\n"); QStringList str_ips_list; - + QStringList str_list_more; + quint32 ipa,ipb; QStringList str_port_list = port_list.split("\n"); QStringList str_ports_list; - quint32 ips_num=0; - quint32 ports_num=0; + quint64 ips_num=0; QRegExp ex_ipv4 ("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); QRegExp ex_ipv4_more("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)-((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); QRegExp ex_ipv4_more2("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)/(0?[0-9]|1[0-9]|2[0-9]|3[0-2])$"); @@ -60,30 +60,73 @@ void dispatch::run() if(ex_ipv4.exactMatch(str_ip_list.at(i))) { qDebug() << str_ip_list.at(i)<<" is ipv4"; + str_ips_list.append(str_ip_list.at(i)); + ips_num+=1; }else if(ex_ipv4_more.exactMatch(str_ip_list.at(i))) { - qDebug() << str_ip_list.at(i)<<" is ipv4_more"; + str_list_more=str_ip_list.at(i).split("-"); + ipa=ipv4str_to_int(str_list_more.at(0)); + ipb=ipv4str_to_int(str_list_more.at(1)); + if(ipa>ipb) + { + for(;ipb<=ipa;ipb++) + { + str_ips_list.append(ipv4int_to_str(ipb)); + ips_num+=1; + } + }else if(ipb>ipa) + { + for(;ipa<=ipb;ipa++) + { + str_ips_list.append(ipv4int_to_str(ipa)); + ips_num+=1; + } + }else//= + { + str_ips_list.append(ipv4int_to_str(ipa)); + ips_num+=1; + } + }else if(ex_ipv4_more2.exactMatch(str_ip_list.at(i))) { qDebug() << str_ip_list.at(i)<<" is ipv4_more2"; + str_list_more=str_ip_list.at(i).split("/"); + ipa=ipv4str_to_int(str_list_more.at(0)); + ipb=qPow(2,(32-str_list_more.at(1).toInt())); + for(quint32 ii=0;ii //socket #include #include - +#include class trytry : public QThread diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index b9ff289..8eed728 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -70,6 +70,102 @@ Widget::Widget(QWidget *parent) });//'scan button pass' + + connect(ui->pushButton_2, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_2->text()); + }); + connect(ui->pushButton_3, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_3->text()); + }); + connect(ui->pushButton_4, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_4->text()); + }); + connect(ui->pushButton_5, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_5->text()); + }); + connect(ui->pushButton_6, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText("\n"); + }); + connect(ui->pushButton_7, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_7->text()); + }); + connect(ui->pushButton_8, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_8->text()); + }); + connect(ui->pushButton_9, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_9->text()); + }); + connect(ui->pushButton_10, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_10->text()); + }); + connect(ui->pushButton_11, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_11->text()); + }); + connect(ui->pushButton_12, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_12->text()); + }); + connect(ui->pushButton_13, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_13->text()); + }); + connect(ui->pushButton_14, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_14->text()); + }); + connect(ui->pushButton_15, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_15->text()); + }); + connect(ui->pushButton_16, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_16->text()); + }); + connect(ui->pushButton_17, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_17->text()); + }); + connect(ui->pushButton_18, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_18->text()); + }); + connect(ui->pushButton_19, &QPushButton::pressed, [=]() + { + + ui->IP_list->insertPlainText(ui->pushButton_19->text()); + }); + connect(ui->pushButton_21, &QPushButton::pressed, [=]() + { + + ui->IP_list->clear(); + }); } Widget::~Widget() diff --git a/ip_sacaner/widget.ui b/ip_sacaner/widget.ui index 9d59167..def0707 100644 --- a/ip_sacaner/widget.ui +++ b/ip_sacaner/widget.ui @@ -44,9 +44,9 @@ - 420 + 480 220 - 171 + 111 41 @@ -68,8 +68,8 @@ - 350 - 230 + 240 + 240 61 22 @@ -87,8 +87,8 @@ - 320 - 230 + 240 + 220 31 16 @@ -101,7 +101,7 @@ 10 - 230 + 240 53 16 @@ -113,8 +113,8 @@ - 70 - 230 + 60 + 240 91 24 @@ -128,12 +128,12 @@ 10 20 - 141 + 171 71 - IP范围 + IP范围 总数不能超过2147483647 127.0.0.1 0.0.0.0-255.255.255.255 domain.com @@ -155,8 +155,8 @@ domain.com - 200 - 230 + 170 + 220 41 16 @@ -168,8 +168,8 @@ domain.com - 250 - 230 + 170 + 240 61 22 @@ -189,7 +189,7 @@ domain.com 10 100 - 471 + 301 111 @@ -197,13 +197,273 @@ domain.com - 490 + 483 100 - 104 + 111 111 + + + + 320 + 100 + 61 + 23 + + + + 192.168. + + + + + + 320 + 130 + 61 + 23 + + + + 169.254. + + + + + + 320 + 160 + 31 + 23 + + + + 10. + + + + + + 350 + 160 + 31 + 23 + + + + 100. + + + + + + 320 + 190 + 31 + 23 + + + + ENT + + + + + + 350 + 190 + 31 + 23 + + + + / + + + + + + 380 + 190 + 31 + 23 + + + + . + + + + + + 440 + 190 + 31 + 23 + + + + - + + + + + + 410 + 190 + 31 + 23 + + + + 0 + + + + + + 380 + 100 + 31 + 23 + + + + 1 + + + + + + 410 + 100 + 31 + 23 + + + + 2 + + + + + + 440 + 100 + 31 + 23 + + + + 3 + + + + + + 380 + 130 + 31 + 23 + + + + 4 + + + + + + 410 + 130 + 31 + 23 + + + + 5 + + + + + + 440 + 130 + 31 + 23 + + + + 6 + + + + + + 380 + 160 + 31 + 23 + + + + 7 + + + + + + 410 + 160 + 31 + 23 + + + + 8 + + + + + + 440 + 160 + 31 + 23 + + + + 9 + + + + + + 380 + 220 + 91 + 41 + + + + Ping Olny + + + + + + 320 + 220 + 51 + 41 + + + + clear + + From 958500acd7709f9c709a2f8a1d9fd222e53326d8 Mon Sep 17 00:00:00 2001 From: fong Date: Tue, 30 Jan 2024 17:14:24 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=A4=9A=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B=E4=B8=8E=E5=88=86=E5=8F=91=20Signed-off-by:=20fong=20?= =?UTF-8?q??= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/scan_run.cpp | 118 ++++++++++++++- ip_sacaner/scan_run.h | 15 +- ip_sacaner/widget.cpp | 163 +++++++++++++++++++- ip_sacaner/widget.h | 1 + ip_sacaner/widget.ui | 328 +++++++++++++++++++++++++++++++++++++++- 5 files changed, 593 insertions(+), 32 deletions(-) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index acac439..9d04b70 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -26,11 +26,25 @@ quint32 ipv4str_to_int(const QString& ipstr) } } + + +trytry::trytry() +{ + + +} + void trytry::run() { + + qDebug()<ipstr<<":"<ipint; + sleep(1); + + } + dispatch::dispatch() { @@ -45,8 +59,11 @@ void dispatch::run() QStringList str_list_more; quint32 ipa,ipb; QStringList str_port_list = port_list.split("\n"); - QStringList str_ports_list; - + QStringList str_ports_temp; + QStringList str_porttoport_temp; + quint32 porta,portb; + QList ports_list; + quint64 ports_num=0; quint64 ips_num=0; QRegExp ex_ipv4 ("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); QRegExp ex_ipv4_more("^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)-((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$"); @@ -121,16 +138,101 @@ void dispatch::run() } - qDebug() << str_ips_list.size(); - for(int ii=0;iiportb) + { + for(;portb<=porta;portb++) + { + ports_list.append(portb); + ports_num+=1; + + } + }else if(portb>porta) + { + for(;porta<=portb;porta++) + { + ports_list.append(porta); + ports_num+=1; + + } + }else//= + { + ports_list.append(porta); + ports_num+=1; + + } + } + + } + } + quint64 scantimes=ips_num*ports_num,now_scan=0; + + qDebug() << "IP: "<now_thread_num<<" - set:"<set_thread_num; + + while(this->now_thread_num>this->set_thread_num); + connecttry=new trytry; + connecttry->timeout=this->timeout; + connecttry->ipstr=str_ips_list.at(ii); + connecttry->ipint=ports_list.at(iii); + this->now_thread_num+=1; + //connect(connecttry,&trytry::started,[=]{this->now_thread_num+=1;}); + connect(connecttry,&trytry::finished,[=]{this->now_thread_num-=1;}); + + connecttry->start(); + + jindu=(quint16)(((qfloat16)(now_scan)/(qfloat16)(scantimes))*100); + if(jindu!=jindu_old) + { + jindu_old=jindu; + //qDebug() < #include #include - +#include class trytry : public QThread { + Q_OBJECT public: + trytry(); - quint16 *outputbusy; - quint16 *barbusy; quint16 timeout; QString ipstr; quint32 ipint; - int *now_thread_num; - QTextEdit* output_list; - - quint64 *t_bar; - quint64 *nt_bar; - void run(); @@ -47,7 +41,7 @@ public: QString ip_list; QString port_list; - + trytry *connecttry; void run(); @@ -55,6 +49,7 @@ public: signals: void dispatch_finish(); void dispatch_one(); + void return_jindu(quint16); }; diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index 8eed728..99d084d 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -8,9 +8,10 @@ -void Widget::auto_edit() +void Widget::jindu_chuli(quint16 temp) { - //qDebug("%d",rand()); + //qDebug()<progressBar->setValue(temp); } @@ -39,8 +40,11 @@ Widget::Widget(QWidget *parent) connect(dispatch_thread,&dispatch::dispatch_finish,[=]{ emit stop_scan(); }); - dispatch_thread->start(); + connect(dispatch_thread,&dispatch::return_jindu,this,&Widget::jindu_chuli); + ui->progressBar->setValue(0); + dispatch_thread->start(); + ui->stard_scan->setDisabled(false); }); connect(this,&Widget::stop_scan,[=]{ @@ -50,20 +54,25 @@ Widget::Widget(QWidget *parent) ui->timeout->setReadOnly(false); ui->threads->setReadOnly(false); ui->stard_scan->setText("start scan"); - qDebug() << "tray_exit"; + dispatch_thread->disconnect(); - dispatch_thread->terminate(); - delete dispatch_thread; + dispatch_thread->quit(); + dispatch_thread->wait(); + //delete dispatch_thread; + ui->stard_scan->setDisabled(false); + qDebug() << "tray_exit"; }); connect(ui->stard_scan, &QPushButton::pressed, [=]() { + ui->stard_scan->setDisabled(true); if(scan_flag==0) { emit start_scan(); }else { + dispatch_thread->terminate(); emit stop_scan(); } @@ -166,6 +175,148 @@ Widget::Widget(QWidget *parent) ui->IP_list->clear(); }); + + + connect(ui->pushButton_22, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_22->text()); + + }); + connect(ui->pushButton_23, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_23->text()); + + }); + connect(ui->pushButton_24, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_24->text()); + + }); + connect(ui->pushButton_25, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_25->text()); + + }); + connect(ui->pushButton_26, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_26->text()); + + }); + connect(ui->pushButton_27, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_27->text()); + + }); + connect(ui->pushButton_28, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_28->text()); + + }); + connect(ui->pushButton_29, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_29->text()); + + }); + connect(ui->pushButton_30, &QPushButton::pressed, [=]() + { + + ui->port_list->appendPlainText(ui->pushButton_30->text()); + + }); + + connect(ui->pushButton_31, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_31->text()); + + }); + connect(ui->pushButton_32, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_32->text()); + + }); + connect(ui->pushButton_33, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_33->text()); + + }); + connect(ui->pushButton_34, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_34->text()); + + }); + connect(ui->pushButton_35, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_35->text()); + + }); + connect(ui->pushButton_36, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_36->text()); + + }); + connect(ui->pushButton_37, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_37->text()); + + }); + connect(ui->pushButton_38, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_38->text()); + + }); + connect(ui->pushButton_39, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_39->text()); + + }); + connect(ui->pushButton_40, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText("\n"); + + }); + connect(ui->pushButton_41, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_41->text()); + + }); + connect(ui->pushButton_42, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_42->text()); + + }); + connect(ui->pushButton_43, &QPushButton::pressed, [=]() + { + + ui->port_list->clear(); + + }); + connect(ui->pushButton_44, &QPushButton::pressed, [=]() + { + + ui->port_list->insertPlainText(ui->pushButton_44->text()); + + }); + } Widget::~Widget() diff --git a/ip_sacaner/widget.h b/ip_sacaner/widget.h index 69bd838..54ad9fb 100644 --- a/ip_sacaner/widget.h +++ b/ip_sacaner/widget.h @@ -33,6 +33,7 @@ public: quint64 t_bar=0; quint64 nt_bar=0; + void jindu_chuli(quint16 temp); signals: void stop_scan(); void start_scan(); diff --git a/ip_sacaner/widget.ui b/ip_sacaner/widget.ui index def0707..20c4865 100644 --- a/ip_sacaner/widget.ui +++ b/ip_sacaner/widget.ui @@ -6,19 +6,19 @@ 0 0 - 600 + 800 500 - 600 + 800 500 - 600 + 800 500 @@ -44,9 +44,9 @@ - 480 + 690 220 - 111 + 91 41 @@ -81,7 +81,7 @@ 999 - 10 + 100 @@ -144,7 +144,7 @@ domain.com 10 270 - 581 + 771 221 @@ -456,7 +456,7 @@ domain.com 320 220 - 51 + 61 41 @@ -464,6 +464,318 @@ domain.com clear + + + + 600 + 100 + 61 + 23 + + + + 1-65535 + + + + + + 600 + 130 + 41 + 23 + + + + 80;443 + + + + + + 620 + 160 + 21 + 23 + + + + 22 + + + + + + 640 + 160 + 21 + 23 + + + + 23 + + + + + + 600 + 160 + 21 + 23 + + + + 21 + + + + + + 640 + 130 + 51 + 23 + + + + 3389 + + + + + + 660 + 160 + 31 + 23 + + + + 445 + + + + + + 600 + 190 + 41 + 23 + + + + 25565 + + + + + + 640 + 190 + 51 + 23 + + + + 25;587 + + + + + + 487 + 230 + 111 + 23 + + + + 0 + + + + + + 690 + 130 + 31 + 23 + + + + 4 + + + + + + 750 + 130 + 31 + 23 + + + + 6 + + + + + + 690 + 100 + 31 + 23 + + + + 1 + + + + + + 720 + 100 + 31 + 23 + + + + 2 + + + + + + 720 + 130 + 31 + 23 + + + + 5 + + + + + + 720 + 160 + 31 + 23 + + + + 8 + + + + + + 750 + 160 + 31 + 23 + + + + 9 + + + + + + 690 + 160 + 31 + 23 + + + + 7 + + + + + + 750 + 100 + 31 + 23 + + + + 3 + + + + + + 720 + 190 + 31 + 23 + + + + 0 + + + + + + 750 + 190 + 31 + 23 + + + + - + + + + + + 660 + 100 + 31 + 23 + + + + ENT + + + + + + 600 + 220 + 91 + 41 + + + + clear + + + + + + 690 + 190 + 31 + 23 + + + + ; + + From 7ee3e2f83297bf6eeec0e61e8e0af1e5b8149b68 Mon Sep 17 00:00:00 2001 From: fong Date: Tue, 30 Jan 2024 18:32:34 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E8=BF=98=E5=B7=AE=E5=86=85=E5=AD=98?= =?UTF-8?q?=E9=87=8A=E6=94=BE=E9=97=AE=E9=A2=98=20Signed-off-by:=20fong=20?= =?UTF-8?q??= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/scan_run.cpp | 36 ++++++++++++++++++++++++++++++------ ip_sacaner/scan_run.h | 11 +++++++---- ip_sacaner/widget.cpp | 9 ++++++--- ip_sacaner/widget.h | 1 + 4 files changed, 44 insertions(+), 13 deletions(-) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index 9d04b70..695dd98 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -36,11 +36,22 @@ trytry::trytry() void trytry::run() { + emit try_one(1); + QString temp = QString("%1:%2").arg(ipstr).arg(ipint); + QTcpSocket m_socket; + m_socket.connectToHost(ipstr, ipint, QTcpSocket::ReadWrite); + if (m_socket.waitForConnected(timeout)) + { + emit connect_ok(temp); + } + m_socket.disconnectFromHost(); + m_socket.disconnect(); + m_socket.deleteLater(); - qDebug()<ipstr<<":"<ipint; - sleep(1); + qDebug()<now_thread_num<<" - set:"<set_thread_num; - while(this->now_thread_num>this->set_thread_num); + connecttry=new trytry; connecttry->timeout=this->timeout; connecttry->ipstr=str_ips_list.at(ii); connecttry->ipint=ports_list.at(iii); - this->now_thread_num+=1; - //connect(connecttry,&trytry::started,[=]{this->now_thread_num+=1;}); - connect(connecttry,&trytry::finished,[=]{this->now_thread_num-=1;}); + + + connect(connecttry,&trytry::try_one,this,&dispatch::f_one); + connect(connecttry,&trytry::connect_ok,[=](QString temp){emit connect_ok(temp);}); + + connect(connecttry,&trytry::finished,[=]{ + connecttry->disconnect(); + connecttry->quit(); + connecttry->wait(); + }); connecttry->start(); @@ -224,6 +242,8 @@ void dispatch::run() now_scan+=1; + while(this->now_thread_num>this->set_thread_num); + } @@ -235,4 +255,8 @@ void dispatch::run() emit dispatch_finish(); } +void dispatch::f_one(qint16 temp) +{ + this->now_thread_num+=temp; +} diff --git a/ip_sacaner/scan_run.h b/ip_sacaner/scan_run.h index 095db53..a11cc59 100644 --- a/ip_sacaner/scan_run.h +++ b/ip_sacaner/scan_run.h @@ -22,7 +22,9 @@ public: QString ipstr; quint32 ipint; void run(); - +signals: + void try_one(qint16); + void connect_ok(QString); }; @@ -33,8 +35,8 @@ public: dispatch(); - quint16 set_thread_num; - quint16 now_thread_num; + qint16 set_thread_num; + qint16 now_thread_num; quint16 thread_start_lock=0; quint16 timeout; @@ -45,11 +47,12 @@ public: void run(); - + void f_one(qint16 temp); signals: void dispatch_finish(); void dispatch_one(); void return_jindu(quint16); + void connect_ok(QString); }; diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index 99d084d..0e72fe1 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -5,7 +5,10 @@ - +void Widget::output_chuli(QString temp) +{ + ui->outputlist->append(temp); +} void Widget::jindu_chuli(quint16 temp) @@ -40,8 +43,8 @@ Widget::Widget(QWidget *parent) connect(dispatch_thread,&dispatch::dispatch_finish,[=]{ emit stop_scan(); }); - connect(dispatch_thread,&dispatch::return_jindu,this,&Widget::jindu_chuli); - + connect(dispatch_thread,&dispatch::return_jindu,this,&Widget::jindu_chuli,Qt::QueuedConnection); + connect(dispatch_thread,&dispatch::connect_ok,this,&Widget::output_chuli,Qt::QueuedConnection); ui->progressBar->setValue(0); dispatch_thread->start(); ui->stard_scan->setDisabled(false); diff --git a/ip_sacaner/widget.h b/ip_sacaner/widget.h index 54ad9fb..ce0913f 100644 --- a/ip_sacaner/widget.h +++ b/ip_sacaner/widget.h @@ -33,6 +33,7 @@ public: quint64 t_bar=0; quint64 nt_bar=0; + void output_chuli(QString temp); void jindu_chuli(quint16 temp); signals: void stop_scan(); From 8fe554db1942dbc1ce0a7e7d90b246752551705e Mon Sep 17 00:00:00 2001 From: fong Date: Tue, 30 Jan 2024 19:19:02 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E5=8F=A5=E6=9F=84=E4=B8=8D=E8=B6=B3?= =?UTF-8?q?=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: fong --- ip_sacaner/scan_run.cpp | 32 +++++++++++++++++++------------- ip_sacaner/widget.cpp | 8 +++++++- ip_sacaner/widget.ui | 30 +++++++++++++++--------------- 3 files changed, 41 insertions(+), 29 deletions(-) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index 695dd98..b0e0949 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -39,17 +39,23 @@ void trytry::run() emit try_one(1); QString temp = QString("%1:%2").arg(ipstr).arg(ipint); - QTcpSocket m_socket; - m_socket.connectToHost(ipstr, ipint, QTcpSocket::ReadWrite); - if (m_socket.waitForConnected(timeout)) - { - emit connect_ok(temp); - } - m_socket.disconnectFromHost(); - m_socket.disconnect(); - m_socket.deleteLater(); - qDebug()<disconnect(); + m_socket->deleteLater(); + delete m_socket; + }); + connect(m_socket,&QTcpSocket::connected,[=]{ + emit connect_ok(temp); + qDebug()<connectToHost(ipstr, ipint, QTcpSocket::ReadWrite); + m_socket->waitForConnected(timeout); + m_socket->disconnectFromHost(); emit try_one(-1); @@ -211,7 +217,7 @@ void dispatch::run() //qDebug() <now_thread_num<<" - set:"<set_thread_num; + //qDebug()<<"now:"<now_thread_num<<" - set:"<set_thread_num; connecttry=new trytry; @@ -222,13 +228,13 @@ void dispatch::run() connect(connecttry,&trytry::try_one,this,&dispatch::f_one); connect(connecttry,&trytry::connect_ok,[=](QString temp){emit connect_ok(temp);}); - +/* connect(connecttry,&trytry::finished,[=]{ connecttry->disconnect(); connecttry->quit(); connecttry->wait(); }); - +*/ connecttry->start(); jindu=(quint16)(((qfloat16)(now_scan)/(qfloat16)(scantimes))*100); diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index 0e72fe1..5ea110a 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -58,7 +58,7 @@ Widget::Widget(QWidget *parent) ui->threads->setReadOnly(false); ui->stard_scan->setText("start scan"); - dispatch_thread->disconnect(); + //dispatch_thread->disconnect(); dispatch_thread->quit(); dispatch_thread->wait(); //delete dispatch_thread; @@ -320,6 +320,12 @@ Widget::Widget(QWidget *parent) }); + connect(ui->clearoutput, &QPushButton::pressed, [=]() + { + + ui->outputlist->clear(); + + }); } Widget::~Widget() diff --git a/ip_sacaner/widget.ui b/ip_sacaner/widget.ui index 20c4865..0f4248c 100644 --- a/ip_sacaner/widget.ui +++ b/ip_sacaner/widget.ui @@ -97,25 +97,12 @@ 线程 - + 10 240 - 53 - 16 - - - - 扫描结果 - - - - - - 60 - 240 - 91 + 81 24 @@ -776,6 +763,19 @@ domain.com ; + + + + 90 + 240 + 71 + 23 + + + + clear output + + From a1bc38df3d47f3e3fca52034417e3015f4fe1f5e Mon Sep 17 00:00:00 2001 From: fong Date: Tue, 30 Jan 2024 19:28:04 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E5=B7=B2=E8=A7=A3=E5=86=B3=E5=8F=A5?= =?UTF-8?q?=E6=9F=84=E5=8D=A0=E7=94=A8=E8=BF=87=E5=A4=9A=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20Signed-off-by:=20fong=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/scan_run.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index b0e0949..d007f1a 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -45,6 +45,7 @@ void trytry::run() connect(m_socket,&QTcpSocket::disconnected,[=]{ qDebug()<disconnect(); + m_socket->close(); m_socket->deleteLater(); delete m_socket; }); From 35b5c2f657487b8e23dd08319e91dc9006f2ebb3 Mon Sep 17 00:00:00 2001 From: fong Date: Tue, 30 Jan 2024 19:41:07 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=94=AE=E7=9B=98?= =?UTF-8?q?=E6=96=B9=E9=9D=A2=E7=9A=84=E7=A6=81=E7=94=A8=20Signed-off-by:?= =?UTF-8?q?=20fong=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ip_sacaner/scan_run.cpp | 1 + ip_sacaner/widget.cpp | 50 +++++++++++++++++++++++++++++++++++++++++ ip_sacaner/widget.h | 1 + ip_sacaner/widget.ui | 5 +++-- 4 files changed, 55 insertions(+), 2 deletions(-) diff --git a/ip_sacaner/scan_run.cpp b/ip_sacaner/scan_run.cpp index d007f1a..186d238 100644 --- a/ip_sacaner/scan_run.cpp +++ b/ip_sacaner/scan_run.cpp @@ -46,6 +46,7 @@ void trytry::run() qDebug()<disconnect(); m_socket->close(); + m_socket->flush(); m_socket->deleteLater(); delete m_socket; }); diff --git a/ip_sacaner/widget.cpp b/ip_sacaner/widget.cpp index 5ea110a..ab24285 100644 --- a/ip_sacaner/widget.cpp +++ b/ip_sacaner/widget.cpp @@ -3,8 +3,56 @@ +void Widget::keyboard_en(bool a) +{ + ui->pushButton_2->setDisabled(a); + ui->pushButton_3->setDisabled(a); + ui->pushButton_4->setDisabled(a); + ui->pushButton_5->setDisabled(a); + ui->pushButton_6->setDisabled(a); + ui->pushButton_7->setDisabled(a); + ui->pushButton_8->setDisabled(a); + ui->pushButton_9->setDisabled(a); + ui->pushButton_10->setDisabled(a); + ui->pushButton_11->setDisabled(a); + ui->pushButton_12->setDisabled(a); + ui->pushButton_13->setDisabled(a); + ui->pushButton_14->setDisabled(a); + ui->pushButton_15->setDisabled(a); + ui->pushButton_16->setDisabled(a); + ui->pushButton_17->setDisabled(a); + ui->pushButton_18->setDisabled(a); + ui->pushButton_19->setDisabled(a); + ui->pushButton_20->setDisabled(a); + ui->pushButton_21->setDisabled(a); + ui->pushButton_22->setDisabled(a); + ui->pushButton_23->setDisabled(a); + ui->pushButton_24->setDisabled(a); + ui->pushButton_25->setDisabled(a); + ui->pushButton_26->setDisabled(a); + ui->pushButton_27->setDisabled(a); + ui->pushButton_28->setDisabled(a); + ui->pushButton_29->setDisabled(a); + ui->pushButton_30->setDisabled(a); + ui->pushButton_31->setDisabled(a); + ui->pushButton_32->setDisabled(a); + ui->pushButton_33->setDisabled(a); + ui->pushButton_34->setDisabled(a); + ui->pushButton_35->setDisabled(a); + ui->pushButton_36->setDisabled(a); + ui->pushButton_37->setDisabled(a); + ui->pushButton_38->setDisabled(a); + ui->pushButton_39->setDisabled(a); + ui->pushButton_40->setDisabled(a); + ui->pushButton_41->setDisabled(a); + ui->pushButton_42->setDisabled(a); + ui->pushButton_43->setDisabled(a); + ui->pushButton_44->setDisabled(a); + +} + void Widget::output_chuli(QString temp) { ui->outputlist->append(temp); @@ -29,6 +77,7 @@ Widget::Widget(QWidget *parent) connect(this,&Widget::start_scan,[=]{ scan_flag=1; + keyboard_en(true); ui->IP_list->setReadOnly(true); ui->port_list->setReadOnly(true); ui->timeout->setReadOnly(true); @@ -52,6 +101,7 @@ Widget::Widget(QWidget *parent) connect(this,&Widget::stop_scan,[=]{ scan_flag=0; + keyboard_en(false); ui->IP_list->setReadOnly(false); ui->port_list->setReadOnly(false); ui->timeout->setReadOnly(false); diff --git a/ip_sacaner/widget.h b/ip_sacaner/widget.h index ce0913f..db22ab4 100644 --- a/ip_sacaner/widget.h +++ b/ip_sacaner/widget.h @@ -35,6 +35,7 @@ public: void output_chuli(QString temp); void jindu_chuli(quint16 temp); + void keyboard_en(bool a); signals: void stop_scan(); void start_scan(); diff --git a/ip_sacaner/widget.ui b/ip_sacaner/widget.ui index 0f4248c..400cf8c 100644 --- a/ip_sacaner/widget.ui +++ b/ip_sacaner/widget.ui @@ -62,7 +62,7 @@ - 开始扫描 + Start @@ -107,7 +107,7 @@ - 保存扫描结果 + Save output @@ -122,6 +122,7 @@ IP范围 总数不能超过2147483647 127.0.0.1 +192.168.0.0/24 0.0.0.0-255.255.255.255 domain.com