您的位置:首页 > 其它

驱动中打印系统时间

2016-10-08 17:18 169 查看
在驱动中打印本地时间三个步骤:

1、在驱动中调用KeQuerySystemTime获取GMT系统时间

2、调用ExSystemTimeToLocalTime将GMT系统时间转换为本地系统时间

3、调用RtlTimeToTimeFields将本地时间转换为TIME_FIELDS结构体

TIME_FIELDS结构体定义如下:

typedef struct _TIME_FIELDS {

    CSHORT Year; // range [1601...]

    CSHORT Month; // range [1..12]

    CSHORT Day; // range [1..31]

    CSHORT Hour; // range [0..23]

    CSHORT Minute; // range [0..59]

    CSHORT Second; // range [0..59]

    CSHORT Milliseconds;// range [0..999]

    CSHORT Weekday; // range [0..6] == [Sunday..Saturday]

} TIME_FIELDS;

typedef TIME_FIELDS *PTIME_FIELDS;

实现如下:

CHAR szTime[128];

LARGE_INTEGER systemTime, localTime;

TIME_FIELDS timeField;

KeQuerySystemTime(&systemTime);

ExSystemTimeToLocalTime(&systemTime, &localTime);

RtlTimeToTimeFields(&localTime, &timeField);

sprintf("%d-%02d-%02d %02d:%02d:%02d:%03d",timeField.Year, timeField.Month, timeField.Day, timeField.Hour, timeField.Minute, timeField.Second, timeField.Milliseconds)
http://blog.csdn.net/eric_zl_zhang/article/details/6780786

<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>

阅读(294) | 评论(0) | 转发(0) |

0
上一篇:_beginthread, _beginthreadex (windows crt

下一篇:C2275 illegal use of this type as an expression

相关热门文章
Python 包管理工具解惑

Red Hat Linux 的主要系统目录...

APP开发报价单,如何计算APP报...

app开发需要多少钱

操作系统虚拟内存中的四种典型...

LNK1123: 转换到 COFF 期间失...

WIN7访问共享:0x80070035 找不...

Delphi 2010下载+完美破解...

vs2010调试C++程序时提示 无...

VISIO,不规则封闭图形填充方...

linux dhcp peizhi roc

关于Unix文件的软链接

求教这个命令什么意思,我是新...

sed -e "/grep/d" 是什么意思...

谁能够帮我解决LINUX 2.6 10...

给主人留下些什么吧!~~

评论热议
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: