首页下载资源前端界面界面界面界面界面界面

ZIP界面界面界面界面界面界面

m0_62534426877.32KB需要积分:1

资源文件列表:

SDFCheck.zip 大约有22个文件
  1. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/
  2. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/.qmake.stash 1.07KB
  3. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/
  4. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/main.o 515.73KB
  5. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/mainwindow.o 593.14KB
  6. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_mainwindow.cpp 2.69KB
  7. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_mainwindow.o 427.35KB
  8. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_predefs.h 14.28KB
  9. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/SDFCheck.exe 1.4MB
  10. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile 31.47KB
  11. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile.Debug 45.45KB
  12. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile.Release 45.53KB
  13. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/release/
  14. SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/ui_mainwindow.h 9.33KB
  15. SDFCheck/cmsdk.ini 54B
  16. SDFCheck/SDFCheck/
  17. SDFCheck/SDFCheck/main.cpp 183B
  18. SDFCheck/SDFCheck/mainwindow.cpp 10.17KB
  19. SDFCheck/SDFCheck/mainwindow.h 421B
  20. SDFCheck/SDFCheck/mainwindow.ui 7.87KB
  21. SDFCheck/SDFCheck/SDFCheck.pro 1.01KB
  22. SDFCheck/SDFCheck/SDFCheck.pro.user 23.17KB

资源介绍:

界面界面界面界面界面界面
#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include #include #include #include //connect(process, &QProcess::readyReadStandardOutput, [=]() { // // 读取进程的标准输出 // QByteArray output = process->readAllStandardOutput(); // QString outputText = QString::fromUtf8(output); // 使用本地编码转换成 QString // // 寻找并提取"错误消息:"后的内容 // int index = outputText.indexOf("错误消息:"); // if (index != -1) { // QString errorMessage = outputText.mid(index + QString("错误消息:").length()).trimmed(); // ui->textBrowser->append(errorMessage); // } //}); MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->pushButton_5, &QPushButton::clicked, this, &MainWindow::on_pushButton_5_clicked); connect(ui->pushButton_6, &QPushButton::clicked, this, &MainWindow::on_pushButton_6_clicked); // 读取cmsdk.ini中的ip和port,并显示在lineEdit和lineEdit_2上 QFile file("D:/SDFCheck/cmsdk.ini"); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { QTextStream in(&file); while (!in.atEnd()) { QString line = in.readLine().trimmed(); if (line.startsWith("ip = ")) { QString ip = line.mid(5).trimmed(); // 获取ip地址 ui->lineEdit->setText(ip); } else if (line.startsWith("port = ")) { QString port = line.mid(7).trimmed(); // 获取端口号 ui->lineEdit_2->setText(port); } } file.close(); } else { QMessageBox::warning(this, "Error", "Failed to open cmsdk.ini for reading."); } } // 槽函数,处理按钮点击事件 void MainWindow::on_pushButton_5_clicked() { QString newIp = ui->lineEdit->text().trimmed(); // 获取并清理IP地址 QString newPort = ui->lineEdit_2->text().trimmed(); // 获取并清理端口号 // 打开cmsdk.ini文件进行更新 QFile file("D:/SDFCheck/cmsdk.ini"); if (!file.open(QIODevice::ReadWrite | QIODevice::Text)) { QMessageBox::warning(this, "Error", "Failed to open cmsdk.ini for writing."); return; } QTextStream in(&file); QStringList lines; bool foundServerSection = false; while (!in.atEnd()) { QString line = in.readLine(); if (!line.trimmed().isEmpty()) { if (line.startsWith("[server]")) { foundServerSection = true; lines.append(line); // 添加[section]行 continue; } if (foundServerSection && line.contains("=")) { QStringList parts = line.split("="); QString key = parts[0].trimmed(); if (key == "ip") { line = "ip = " + newIp; // 更新IP地址 } else if (key == "port") { line = "port = " + newPort; // 更新端口号 } } } lines.append(line); // 添加其他行 } file.resize(0); // 清空文件内容 QTextStream out(&file); // 重新写入更新后的内容 for (const QString &line : lines) { out << line << endl; } file.close(); QMessageBox::information(this, "Success", "Updated cmsdk.ini successfully."); } //void MainWindow::on_pushButton_6_clicked() { // QString ipSubnet = ui->lineEdit_3->text(); // QString command = QString("nmap -sS %1").arg(ipSubnet); // // Create a QProcess instance // QProcess *process = new QProcess(this); // process->setWorkingDirectory("C:/Program Files (x86)/Nmap"); // // Connect signals to handle process output // connect(process, &QProcess::readyReadStandardOutput, [this, process]() { // QByteArray output = process->readAllStandardOutput(); // QString outputText = QString::fromLocal8Bit(output); // // Filter out "Active code page: 65001" message // if (!outputText.contains("Active code page: 65001")) { // ui->textBrowser_5->append(outputText); // } // }); // connect(process, &QProcess::readyReadStandardError, [this, process]() { // QByteArray output = process->readAllStandardError(); // QString outputText = QString::fromLocal8Bit(output); // ui->textBrowser_5->append(outputText); // }); // // Start the process with the command // process->start("cmd", QStringList() << "/c" << command); //} //void MainWindow::on_pushButton_6_clicked() { // QString ipSubnet = ui->lineEdit_3->text(); // // Check if input is empty // if (ipSubnet.isEmpty()) { // ui->textBrowser_5->append("请输入扫描网段!"); // return; // Exit the function if input is empty // } // QString command = QString("nmap -sS %1").arg(ipSubnet); // // Create a QProcess instance // QProcess *process = new QProcess(this); // process->setWorkingDirectory("C:/Program Files (x86)/Nmap"); // // Create a QTimer for timeout detection // QTimer *timeoutTimer = new QTimer(this); // timeoutTimer->setInterval(20000); // 20 seconds // timeoutTimer->setSingleShot(true); // // Connect the timeout signal to handle the timeout case // connect(timeoutTimer, &QTimer::timeout, [this, process]() { // if (process->state() == QProcess::Running) { // process->terminate(); // Terminate the process if still running // ui->textBrowser_5->append("扫描超时!"); // } // }); // // Connect signals to handle process output // connect(process, &QProcess::readyReadStandardOutput, [this, process]() { // QByteArray output = process->readAllStandardOutput(); // QString outputText = QString::fromLocal8Bit(output); // // Filter out "Active code page: 65001" message // if (!outputText.contains("Active code page: 65001")) { // ui->textBrowser_5->append(outputText); // } // }); // connect(process, &QProcess::readyReadStandardError, [this, process]() { // QByteArray output = process->readAllStandardError(); // QString outputText = QString::fromLocal8Bit(output); // ui->textBrowser_5->append(outputText); // }); // // Connect the finished signal to stop the timer if the process completes // connect(process, QOverload::of(&QProcess::finished), [timeoutTimer]() { // timeoutTimer->stop(); // Stop the timer if the process finishes in time // }); // // Start the timer // timeoutTimer->start(); // // Start the process with the command // process->start("cmd", QStringList() << "/c" << command); //} void MainWindow::on_pushButton_6_clicked() { QString ipSubnet = ui->lineEdit_3->text(); if (ipSubnet.isEmpty()) { ui->textBrowser_5->setText("请输入扫描网段!"); return; } QString command = QString("nmap -sS %1").arg(ipSubnet); QProcess *process = new QProcess(this); process->setWorkingDirectory("C:/Program Files (x86)/Nmap");//nmap目录 QTimer *timeoutTimer = new QTimer(this); timeoutTimer->setInterval(20000); // 20 seconds timeoutTimer->setSingleShot(true); connect(timeoutTimer, &QTimer::timeout, [this, process]() { if (process->state() == QProcess::Running) { process->terminate(); ui->textBrowser_5->append("扫描超时!"); } }); connect(process, &QProcess::readyRead
100+评论
captcha