如何使用c ++设置Windows时钟

The*_*ask 3 c++ time winapi

我正在尝试使用C++设置Windows系统时钟.我正在尝试使用以下代码(不工作):

#include "stdafx.h"
#include "iostream"
#include "windows.h"
using namespace std;

int _tmain(int argc, _TCHAR* argv[]) {

    SYSTEMTIME st;
    st.wDay = 1;
    st.wMonth = 5;
    st.wYear = 2011;
    st.wHour = 12;
    st.wMinute = 15;
    bool result = SetLocalTime(&st);
    cout << result;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

有人可以指出我的错误吗?提前致谢.

Ser*_*ier 6

哪个Windows版本?在Vista +上,您需要管理员权限才能设置时间.以管理员身份运行您的程序,它应该工作.

好吧,正如亚当在下面写的那样,管理员权限并不是严格要求的,但让我们开始让它以简单的方式工作;-)

此外,我将ZeroMemory(&st,sizeof(st))确保额外的成员(如秒)不包含不可接受的值.更好的是,只需初始化结构的所有成员.