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版本:编译时对应用程序的速度进行优化,使得程序在代码大小和运行速度上都是最优的。

相关推荐
敲代码的瓦龙1 小时前
STL?list!!!
c语言·开发语言·数据结构·c++·windows·list
一枚小菜程序员1 小时前
记录: Windows下远程Liunx 系统xrdp 用到的一些小问题(免费踩坑 记录)
windows
tyn1889 小时前
记录一次conda虚拟环境pip安装报错[WinError 32] 另一个程序正在使用此文件,进程无法访问
windows·conda·pip·虚拟环境·虚环境
陈苏同学18 小时前
[已解决] VS Code / Cursor / Trae 的 PowerShell 终端 conda activate 进不去环境的常见问题
linux·windows·conda
辰%18 小时前
如何重启pycharm中的项目?
windows·python·pycharm
iangyu21 小时前
【windows server脚本每天从网络盘复制到本地】
开发语言·windows·php
love530love1 天前
家用或办公 Windows 电脑玩人工智能开源项目配备核显的必要性(含 NPU 及显卡类型补充)
人工智能·windows·python·开源·电脑
周胡杰1 天前
鸿蒙接入flutter环境变量配置windows-命令行或者手动配置-到项目的创建-运行demo项目
javascript·windows·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
几道之旅2 天前
分别在windows和linux上使用curl,有啥区别?
linux·运维·windows
一直奔跑在路上2 天前
【Ansible】基于windows主机,采用NTLM+HTTPS 认证部署
windows·https·ansible