下载资源前端资源详情
SDFCheck.zip
大小:877.32KB
价格:32积分
下载量:0
评分:
5.0
上传者:m0_62534426
更新日期:2024-08-11

界面界面界面界面界面界面

资源文件列表(大概)

文件名
大小
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/
-
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/.qmake.stash
1.07KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/
-
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/main.o
515.73KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/mainwindow.o
593.14KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_mainwindow.cpp
2.69KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_mainwindow.o
427.35KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/moc_predefs.h
14.28KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/debug/SDFCheck.exe
1.4MB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile
31.47KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile.Debug
45.45KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/Makefile.Release
45.53KB
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/release/
-
SDFCheck/build-SDFCheck-Desktop_Qt_5_12_9_MinGW_64_bit-Debug/ui_mainwindow.h
9.33KB
SDFCheck/cmsdk.ini
54B
SDFCheck/SDFCheck/
-
SDFCheck/SDFCheck/main.cpp
183B
SDFCheck/SDFCheck/mainwindow.cpp
10.17KB
SDFCheck/SDFCheck/mainwindow.h
421B
SDFCheck/SDFCheck/mainwindow.ui
7.87KB
SDFCheck/SDFCheck/SDFCheck.pro
1.01KB
SDFCheck/SDFCheck/SDFCheck.pro.user
23.17KB

资源内容介绍

界面界面界面界面界面界面
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QFile>#include <QTextStream>#include <QMessageBox>#include <QProcess>#include <QDebug>#include <QTimer>//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<int, QProcess::ExitStatus>::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

用户评论 (0)

发表评论

captcha

相关资源

ModStart 茶叶行业主题网站源码

ModStart 茶叶行业主题网站源码

39.02MB22积分

智能水位检测与控制系统的方案的设计.zip

智能水位检测与控制系统的方案的设计.zip

2.96KB22积分

基于JAVA的高校实习信息发布网站(Vue.js+SpringBoot+MySQL)

基于Vue.js和SpringBoot的高校实习信息发布网站是一个专为高校学生、企业和管理员设计的综合性平台。用户前台主要面向普通用户和企业,提供职位实习模块,用户可以浏览和搜索实习职位,同时企业可以发布和管理实习职位。实习申请模块允许学生在线申请实习职位,并通过系统跟踪申请状态。简历管理模块则为学生提供了创建和编辑个人简历的功能,方便他们向企业展示自己的能力和经历。实习记录模块则记录了学生的实习经历和评价,有助于他们积累实习经验。管理后台则为管理员提供了对整个平台的控制权,包括企业管理模块,管理员可以对企业进行审核和管理,确保平台的质量和安全。整个网站采用Vue.js构建前端界面,SpringBoot作为后端框架,实现了前后端分离,提高了开发效率和用户体验。演示录屏:https://www.bilibili.com/video/BV1inYeeAEUi配套教程:https://www.bilibili.com/video/BV1pW4y1P7GR

35.45MB13积分

基于JAVA的人事管理系统(Vue.js+SpringBoot+MySQL)

基于Vue.js和SpringBoot的人事管理系统是一款功能全面、易于使用的企业级应用,它分为用户前台和管理后台两个部分,旨在为管理员和员工提供便捷的人事管理服务。系统支持多种角色使用,包括管理员和普通员工,以满足不同用户的需求。在功能模块方面,该系统涵盖了员工考勤模块,通过自动化的考勤记录和数据分析,帮助企业高效管理员工的出勤情况;员工请假模块,允许员工在线提交请假申请,简化了请假流程,提高了工作效率;薪资管理模块,实现了员工薪资的自动化计算和发放,确保了薪资管理的准确性和及时性;人事调动模块,方便企业对员工的岗位和部门进行调整,优化了人力资源配置;培训管理模块,帮助企业规划和实施员工培训计划,提升员工的专业技能和综合素质。整体而言,这款人事管理系统以其强大的功能和易用性,为企业提供了一站式的人事管理解决方案。演示录屏:https://www.bilibili.com/video/BV1xTYLeFEkf配套教程:https://www.bilibili.com/video/BV1pW4y1P7GR

31.5MB39积分