GetLocalTime

GetLocalTime

#include "stdafx.h"
#include <iostream>
using namespace std;

#if 0

GetLocalTime是一个Windows API 函数,用来获取当地的当前系统日期和时间

函数原型 :
VOID GetLocalTime(
	LPSYSTEMTIME lpSystemTime //address of system times structure
);

参数说明:
lpSystemTime: 指向一个用户自定义包含日期和时间信息的类型为 SYSTEMTIME 的变量,
该变量用来保存函数获取的时间信息。此函数会把获取的系统时间信息存储到SYSTEMTIME结构体里边

typedef struct _SYSTEMTIME
{
	WORD wYear;//年
	WORD wMonth;//月
	WORD wDayOfWeek;//星期,0为星期日,1为星期一,2为星期二……
	WORD wDay;//日
	WORD wHour;//时
	WORD wMinute;//分
	WORD wSecond;//秒
	WORD wMilliseconds;//毫秒
}SYSTEMTIME, *PSYSTEMTIME;

结构中的字段全为word类型,而Win32程序中用的往往是dword型变量,
所以在使用这些数据之前往往要先把它们转换为dword类型,用movzx指令就可以实现。

在SYSTEMTIME数据结构里, 日期和时间都被编码了.月份是从1月开始的(一月份就是1月)。
周日是从0开始的(星期天是0).wDay是在当前月份下的日期,也是从1开始的。

invoke SetLocalTime, lpSystemTime, GetLocalTime获取本地时间
invoke SetSystemTime, lpSystemTime; 获取格林威治标准时间


适用平台/头文件和链接库:
Windows 95及以上版本、Windows NT3.1及以上版本、Windows CE1.0及以上版本
头文件: winbase.h
链接库:coredll.lib
举例:
SYSTEMTIME stTime;
GetLocalTime(&stTime);
WORD wYear = stTime.wYear;
WORD wMonth = stTime.wMonth;
WORD wDay = stTime.wDay;
WORD wHour = stTime.wHour;
WORD wMinute = stTime.wMinute;
WORD wSecond = stTime.wSecond;
CString m_date;
//m_date字符串即为当前时间。如:2010年4月23日 11:12:45
m_date.Format("%4d年%2d月%2d日 %2d:%2d:%2d", wYear, wMonth, wDay, wHour, wMinute, wSecond);


#endif

猜你喜欢

转载自blog.csdn.net/SwordArcher/article/details/81667127
今日推荐