|
1、使用API函数SetLocalTime进行本地时间设置。
1)SetLocalTime函数的原型:
BOOL SetLocalTime( const SYSTEMTIME *lpSystemTime );
输入参数lpSystemTime是一个SYSTEMTIME类型的参数,如果设置成功,返回true,本地时间将会变成lpSystemTime所指定的时间,否则返回false。
看一下SYSTEMTIME的格式:
typedef struct _SYSTEMTIME {
WORD wYear; WORD wMonth; WORD wDayOfWeek; WORD wDay; WORD wHour; WORD wMinute; WORD wSecond; WORD wMilliseconds; } SYSTEMTIME, *PSYSTEMTIME; 各成员的含义不用解释了吧。 2)我们来看一下如何利用SYSTEMTIME结构体和SetLocalTime函数进行本地时间的设置。
SYSTEMTIME st; st.wMilliseconds = 0; SetSystemTime(&st); 对比一下SYSTEMTIME结构体,可以发现,除wDayOfWeek成员之外,其它各成员都进行赋值了,甚至连wMilliseconds。使用这种 方式进行系统时间设置时,会忽略wDayOfWeek成员,可以不进行该成员的赋值(即使你赋值了也不会被考虑的),但其它所有成员都必须时行赋值,否则 无法成功地进行时间设置。
3)如果只想对其中的几项进行设置的话,可以先使用GetLocalTime函数来获取当前本地时间,然后再对相应的项进行修改,如下: SYSTEMTIME st; 这样的方式比上面方便多了。
4)上面说到的方法都是对每一项单独进行设置,在VC里面,也提供了一次性设置所有项的方法,使用COleDateTime类。 COleDateTime tm; tm.GetAsSystemTime(st); 程序应该很好懂吧,不过有几个注意点要说明一下。 a)先是ParseDateTime,函数原型: BOOL ParseDateTime( "25 January 1996"
b)dwFlags有三种值,LOCALE_NOUSEROVERRIDE、VAR_TIMEVALUEONLY、VAR_DATEVALUEONLY。 LOCALE_NOUSEROVERRIDE是使用系统默认的方式,VAR_TIMEVALUEONLY是忽略日期,在该选项下,日期会被设置为0,也就 是1899年12月30日,在VAR_DATEVALUEONLY下忽略时间,时间被设置为0,即午夜零点。
c)至于第三个参数lcid,是指定转换方式,语言支持方面的,MSDN里面有个很详细的表,有兴趣可以去看看。
d)COleDateTime还提供了获取时间的函数,如GetYear()之类的。
e)注意一下,如果没有指定日期的话,转换后日期就自动变为0,也就是跑1899年去了,这可很危险啊。本来还想偷个懒不指定呢,谁知道怎么偷懒的告诉我一声啊。
2、SetLocalTime与SetSystemTime的差别 SetSystemTime的用法与SetLocalTime基本相同,不重复了。差点在于SetSystemTime所带的参数指定的是UTC时间(国 际标准时间),也就是说,像我的电脑里指定的是东八区,这样的话,使用SetSystemTime设置之后,系统的时间,会比参数里所设置的时间快8个小 时。 另外,这两个函数设置的时间,都是对本地机各个系统都有效的。本来很好奇windows系统下改了时间,linux下是不是也会跟着改呢。事实证明是这样的。
3、使用COleDateTimeSpan类进行时间的加减。 COleDateTime tm; ts.SetDateTimeSpan(0,8,0,-14);
这个程序也很易懂,不说什么了,你只要想清楚了是该加上这个时间差呢还是减去这个时间差就行了,我是经常转不过来啦。
另外,似乎在XP下有权限问题,不是管理员账号的可能不能这样进行修改,这个我没有去试过,谁去试过了跟我说一下吧。
最后补充一句,修改系统时间之后,编译时候容易出问题,最好是每次编译的时候把时间改回来了再重新编译,或者使用rebuild all,全部重新编译,要不很有可能即使你编译了,而得到的可执行文件还是修改之前的。 |
相关推荐
WinCE 设置时间
WinCE 设置时间
C语言时间函数(3)之Windows下设置时间SetLocalTime和SetSystemTime
1.设置当前时区的时间 头文件:#include 函数声明:BOOL SetLocalTime(const SYSTEMTIME* lpSystemTime); 返回值:成功返回true,失败返回flase 这里介绍下SYSTEMTIME这个结构体 typedef struct _SYSTEMTIME { // st WORD wYear; WORD wMo
二维“能量源”(电场、磁场、功率)入射边界设置方法
comsol光学仿真设计相关学习笔记和经验 1. 二维“能量源”(电场、磁场、功率)入射边界设置方法 2.边界条件设置薄膜材料
[VC] 设置系统时间
主要讲如何在VC里进行系统时间设置。 1、使用API函数SetLocalTime进行本地时间设置。1)SetLocalTime函数的原型:BOOL SetLocalTime( const SYSTEMTIME *lpSystemTime );输入参数lpSystemTime是一个SYSTEMTIME类型的参数,如果设置成功,返回true,本地时间将会变成lpSystemTime
直流有刷电机H桥控制实战:从原理图到PWM调速(附DR70x驱动芯片详解)
本文详细解析了直流有刷电机H桥控制的核心技术,从原理图设计到PWM调速实现,特别针对DR70x驱动芯片的应用进行了深入探讨。文章涵盖了H桥电路的电流路径分析、PWM调速的工程细节、DR70x驱动芯片的工作原理及典型应用电路设计,并提供了实测波形分析和故障排查方法,为工程师提供了一套完整的解决方案。
vue中使用video-player视频插件,第一次无法监听父组件穿过来的值解决办法
需求: 页面 作品清单是从后端请求回来的不同格式的url,前端需求根据后缀动态判断格式,然后对齐进行下载和
VC里设置系统时间
转至:http://blog.sina.com.cn/s/blog_4c7fa77b01000at8.html 如何在VC里进行系统时间设置。 1、使用API函数SetLocalTime进行本地时间设置。 1)SetLocalTime函数的原型: BOOL SetLocalTime( const SYSTEMTIME *lpSystemTime ); 输入参数lpSystemTi
matplotlib三维画图之观察博弈论混合策略下纳什均衡点
参考链接: 博弈论入门20讲之第16讲-猜谜游戏-散户如何赢庄家 游戏背景: 我的期望是: 你的期望是: 使用Python的matplotlib画图: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) X = np.linspace(0, 1, 100) Y = np.linspace(0, 1,
VC里进行系统时间设置
使用API函数SetLocalTime进行本地时间设置。 ◦ SetLocalTime函数的原型: BOOL SetLocalTime( const SYSTEMTIME *lpSystemTime ); 输入参数lpSystemTime是一个SYSTEMTIME类型的参数,如果设置成功,返回true,本地时间将会变成lpSystemTime所指定的时间,否则返回false。看一下SYSTEM
在Open3D中从网格中采样点云
在本文中,我们将学习如何使用Open3D从网格中采样点云。点云采样是点云处理的重要步骤之一,能够为后续的任务提供必要的输入。通过这些示例代码,我们可以很容易地使用Open3D库从网格模型中采样点云。值得注意的是,根据实际应用需求,我们可以调整采样点的数量和采样方法来满足不同的场景需求。除了使用Poisson Disk算法,Open3D还提供了其他的点云采样方法,如Uniform采样和Random采样。这个函数使用了Poisson Disk采样算法,可以在保持点云均匀性的同时,尽可能避免重叠点的生成。
(第100天)Oracle GoldenGate 常见故障处理指南
OGG 运维的核心在于细致的配置管理和主动的问题排查。熟悉常见错误、掌握关键操作流程、并善用日志和调试工具,是保障数据同步任务稳定运行的关键。希望这份指南能帮助您更高效地解决 OGG 同步中遇到的问题。祝您运维顺利!
设置系统时间
主要讲如何在VC里进行系统时间设置。 使用API函数SetLocalTime进行本地时间设置。 SetLocalTime函数的原型: BOOL SetLocalTime( const SYSTEMTIME *lpSystemTime ); 输入参数lpSystemTime是一个SYSTEMTIME类型的参数,如果设置成功,返回true,本地时间将会变成lpSystemTime所指定
245. 项目195:简易文字冒险游戏——《跟老吕学Python·新手》
如果您在学习本专栏教程时遇到任何问题,或有任何技术交流的意愿,欢迎在文章评论区留言,或通过优快云私信与老吕取得联系。老吕将及时回复您的留言,并与您共同探讨,以期为大家提供更为精准和有效的帮助。老吕珍视每一位读者的反馈和支持,期待与您共同学习、共同进步,共同创造美好的未来!我们的目标是不仅教会您Python语言,更是培养您解决问题的思维方式。请随意翻阅,按照自己的节奏学习,让这本专栏成为您编程旅程中的可靠伙伴。开发一个简易的文字冒险游戏,通过文本描述场景和事件,让玩家通过选择不同的选项来推动故事发展。
VC中定时器设置
本文简单介绍下VC中定时器设置。 首先,新建对话框应用程序,然后添加几个操作按钮。 定义相关变量 private: int m_nValue; DWORD m_dwTimeStarted; LARGE_INTEGER m_cupHZ; LARGE_INTEGER m_StartCount; 源文件 void CTimeCountDlg::OnTimer(UINT nI
第1章 环境准备
本章是 Kubernetes 高可用集群部署的前置基础环境配置,所有节点必须严格按顺序执行。主要内容包括:节点规划(IP、角色、配置要求)、VMware 克隆节点环境清理(解决 MAC 地址和主机名冲突)、统一工作目录创建、主机名与 hosts 解析配置、系统基础升级、防火墙与 swap 关闭、内核模块加载(overlay、br_netfilter、ip_vs)、网络参数优化(IP 转发、桥接过滤)、时间同步配置等。Ubuntu 24.04 内核 6.8+ 原生支持 eBPF 和 IPVS,无需手动升级内核
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
VC-CTime时间
获得当前日期和时间CTime tm=CTime::GetCurrentTime(); CString str=tm.Format("%Y-%m-%d");在VC中,我们可以借助CTime时间类,获取系统当前日期,具体使用方法如下:CTime t = CTime::GetCurrentTime(); //获取系统日期int d=t.GetDay(); //获得几号int y=t.GetYear();
Probability and Statistics - 4th edition
Probability and Statistics - 4th edition
VC自动与Internet时间服务器同步更新
在VCKBASE、优快云里挖了许久的坟,才找到一些有点用的资料,最后自己整理出这样的个函数,方面VC实现时间同步,多的不说,自己看源码,根据自己的需要可以适当修改源码: #include #pragma comment (lib,"Ws2_32")struct NTP_Packet{ int Control_Word; int
WINCC7.3破解文件
WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!
wince 设置系统时间
WINCE 6.0 系统的时间设置 2011-07-05 15:29 如何在VC里进行系统时间设置 2011-01-24 01:39 1、使用API函数SetLocalTime进行本地时间设置。 1)SetLocalTime函数的原型:
VC中获得当前日期和时间
获得当前日期和时间 CTime tm=CTime::GetCurrentTime(); CString str=tm.Format("%Y-%m-%d"); 在VC中,我们可以借助CTime时间类,获取系统当前日期,具体使用方法如下: CTime t = CTime::GetCurrentTime(); //获取系统日期 int d=t.GetDay(); //获得几号 int y
ADS开发简介(二) 环境配置和工具使用
ADS环境配置和工具使用1. 安装ADS(过程略)2. 将ADSRegFiles.dll文件拷贝到ADS安装目录3. VC环境配置 1)创建工程 2)配制运行路径 3)包含ADS头文件 4. 运行模拟器 运行模拟器前,需要将系统时间设置为2006年10月(建议设置为2006-1
1万+



被折叠的 条评论
为什么被折叠?



