9月19日学习记录

获取Windows系统的UUID

cmd.exe中执行wmic csproduct get uuid

cpp 复制代码
    QProcess p(0);
    p.start("cmd",QStringList()<<"/c"<<"wmic csproduct get uuid");
    p.waitForStarted();
    p.waitForFinished();
    QString strTemp=QString::fromLocal8Bit(p.readAllStandardOutput());
    QStringList list=strTemp.split('\n');
    QString str=list.at(1);
    str=str.simplified();
    qDebug()<<str;

获取Windows系统的CPUID

wmic cpu get processorid

cpp 复制代码
    QProcess p(0);
    p.start("cmd",QStringList()<<"/c"<<"wmic cpu get processorid");
    p.waitForStarted();
    p.waitForFinished();
    QString strTemp=QString::fromLocal8Bit(p.readAllStandardOutput());
    QStringList list=strTemp.split('\n');
    QString str=list.at(1);
    str=str.simplified();
    qDebug()<<str;

获取系统当前时间

qt -- 获取当前时间 QDateTime、QTime、QDate_currentdatetime_cc_rong的博客-CSDN博客

cpp 复制代码
    QDateTime datetime=QDateTime::currentDateTime();
    QString str=datetime.toString("yyyy-MM-dd hh:mm:ss");
    qDebug()<<str;

目标:保存程序第一次运行的时间戳。

先在release目录下创建time.ini,内容如下(我用的release版本):

cpp 复制代码
[MAIN]
is_first=true
first_using_time=
cpp 复制代码
    QSettings* settings = new QSettings("time.ini", QSettings::IniFormat);
    settings->beginGroup("MAIN");
    bool is_first=settings->value("is_first").toBool();
    if(is_first){
        QDateTime datetime=QDateTime::currentDateTime();
        QString str=datetime.toString("yyyy-MM-dd hh:mm:ss");
        settings->setValue("is_first",false);
        settings->setValue("first_using_time",str);
    }
    settings->endGroup();
    delete settings;

代码测速

QElapsedTimer-CSDN博客

cpp 复制代码
    QElapsedTimer timer;
    if(timer.isValid()){
        qDebug()<<"QElapsedTimer is valid before starting";
    }
    else{
        qDebug()<<"QElapsedTimer is invalid before starting";
    }
    timer.start();

    if (timer.isValid()) {
        qDebug() << "QElapsedTimer is valid when started";
    } else {
        qDebug() << "QElapsedTimer is invalid when started";
    }

    for (int i = 0; i < 200000000; i++);

    qint64 endTime = timer.nsecsElapsed();
    qDebug() << "Time elapsed:" << endTime << "ns";

debug: 460615800 ns

release:873700 ns

release版本:编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。

相关推荐
历程里程碑10 小时前
C++ 8:list容器详解与实战指南
c语言·开发语言·数据库·c++·windows·笔记·list
石像鬼₧魂石10 小时前
Hydra 弱口令爆破的详细命令模板
linux·windows·学习·ubuntu
菜鸟小芯10 小时前
OpenHarmony环境搭建——03-DevEco Studio下载安装及其配置【2025】
windows
Bruce_Liuxiaowei10 小时前
Windows系统sc命令:系统安全防护的实用工具
windows·安全·系统安全
吕了了19 小时前
85 微PE吕了了修改版--更新!
运维·windows·电脑·系统
修炼者20 小时前
Windows如何自定义任何窗口置顶
windows
CreasyChan20 小时前
C# 反射详解
开发语言·前端·windows·unity·c#·游戏开发
吕了了21 小时前
87 Windows 系统安装的本质是什么?
运维·windows·电脑·系统
洲星河ZXH21 小时前
Java,集合框架体系
开发语言·windows