[英]How to change windows system time in Qt?
我想更改系统时间,如何在Qt中更改Windows系统时间? 我用这种方式,但是失败了!
#include <QApplication>
#include <iostream>
#include <time.h>
#include <windows.h>
#include <QDateTime>
#include <QDebug>
using namespace std;
bool setDate(int,int,int);
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
qDebug()<<QDateTime::currentDateTime()<<endl; //before change time
if(setDate(2015,1,1)) //set time
{
qDebug()<<QDateTime::currentDateTime()<<endl; //if succeed,output time
}
return a.exec();
}
bool setDate(int year,int mon,int day)
{
SYSTEMTIME st;
GetSystemTime(&st); // Win32 API get time
st.wYear=year; //set year
st.wMonth=mon; //set month
st.wDay=day; //set day
return SetSystemTime(&st); //Win32 API set time
}
先感谢您。
更改系统时间需要管理员权限。 这意味着您需要:
requireAdministrator
选项添加到清单中,以便该程序始终具有管理员权限。 这是个坏主意,您不会在每次启动时都喜欢UAC对话框。 runas
shell动词开头的进程,或者一个以COM高程名字开头的进程。 如果您觉得这很麻烦,则需要阅读UAC。 从这里开始: https : //msdn.microsoft.com/zh-cn/library/windows/desktop/dn742497(v=vs.85).aspx
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.