QT 周期性的杀死一个进程(软件),一分钟后自动退出

1.原因:某软件开机自启动很烦,搞一个程序干掉这个自启动的软件

2.QT代码

  • main.cpp
cpp 复制代码
#include "KillXXX.h"
#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    KillXXX k;
    return a.exec();
}
  • KillXXX.h
cpp 复制代码
#include <QtCore/QObject>

class KillXXX : public QObject
{
    Q_OBJECT

public:
    KillXXX(QObject*parent = nullptr);
    ~KillXXX();

    void KillAppProcess();
private slots:
    void On_timeout();
private:
    QTimer* myTimer;
    int count;
};
  • KillXXX.cpp
cpp 复制代码
#include "KillXXX.h"
#include <QTimer>
#include <QProcess>
KillXXX::KillXXX(QObject*parent)
    : QObject(parent)
{
    count = 0;
    myTimer = new QTimer(this);
    connect(myTimer, &QTimer::timeout, this, &KillXXX::On_timeout);
    myTimer->start(10000);
}

KillXXX::~KillXXX()
{
}

void KillXXX::KillAppProcess()
{
    QString processName = "进程名.exe"; // 要关闭的进程名称
    // 使用taskkill命令关闭进程
    QString command = "taskkill /F /IM " + processName ;
    QProcess::startDetached("cmd.exe", QStringList() << "/c" << command);
}

void KillXXX::On_timeout()
{
    if (count >= 6)
    {
        myTimer->stop();
        delete myTimer;
        myTimer = nullptr;
        this->deleteLater();
    }
    KillXXX::KillAppProcess();
    ++count;
}

3.利用windeployqt打包这个.exe文件,加入开机自启动就可以啦

怎么打包一个软件(点击链接:https://blog.csdn.net/dfr110719/article/details/136992619)

相关推荐
四维碎片5 小时前
【Qt】线程池与全局信号实现异步协作
开发语言·qt·ui·visual studio
IT码农-爱吃辣条5 小时前
Three.js 初级教程大全
开发语言·javascript·three.js
☺����6 小时前
实现自己的AI视频监控系统-第一章-视频拉流与解码2
开发语言·人工智能·python·音视频
染翰6 小时前
lua入门以及在Redis中的应用
开发语言·redis·lua
王者鳜錸6 小时前
PYTHON让繁琐的工作自动化-函数
开发语言·python·自动化
兔老大RabbitMQ7 小时前
git pull origin master失败
java·开发语言·git
tt5555555555557 小时前
C/C++嵌入式笔试核心考点精解
c语言·开发语言·c++
xiao助阵7 小时前
python实现梅尔频率倒谱系数(MFCC) 除了傅里叶变换和离散余弦变换
开发语言·python
科大饭桶7 小时前
C++入门自学Day14-- Stack和Queue的自实现(适配器)
c语言·开发语言·数据结构·c++·容器
扛麻袋的少年8 小时前
7.Kotlin的日期类
开发语言·微信·kotlin