首页
社区
课程
招聘
[求助]求一段代码,获取EPROCESS的创建时间,R0层
发表于: 2014-1-27 15:28 4449

[求助]求一段代码,获取EPROCESS的创建时间,R0层

2014-1-27 15:28
4449
LARGE_INTEGER a,b;
       DWORD *aa;
     TIME_FIELDS tmt;
      DbgPrint("EP地址:%X\n",process);//地址是对的
     a = (LARGE_INTEGER*)process+0x78;//获取退出时间
     ExSystemTimeToLocalTime(&a,&b);
    RtlTimeToTimeFields(&a,&tmt);
    DbgPrint("%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n", tmt.Year,tmt.Month,tmt.Day,tmt.Hour,tmt.Minute,tmt.Second,tmt.Milliseconds,tmt.Weekday);//打印出来的时间不对,
我想问一下这里该怎么显示时间呢?谢谢哥们
       
        //LONGLONG tim=PsGetProcessCreateTimeQuadPart(process);
        上次有人说这个API获取创建时间,但返回的是LONGLONG的类型,我不太清楚在R0层怎么显示时间

        DbgPrint("%ld\n",PsGetProcessCreateTimeQuadPart(process));
        //a=PsGetProcessExitTime();

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
自己顶一下@!!!
2014-1-27 18:49
0
雪    币: 19
活跃值: (1086)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
VOID a()
{
        CHAR szTime[128];
        LARGE_INTEGER systemTime, localTime;
        LARGE_INTEGER processTime;
        processTime.QuadPart = PsGetProcessCreateTimeQuadPart((PEPROCESS)0x86098da0);//0x86098da0 explorer.exe

        TIME_FIELDS timeField;

        ExSystemTimeToLocalTime(&processTime, &localTime);

        RtlTimeToTimeFields(&localTime, &timeField);

        KdPrint(("%d-%02d-%02d %02d:%02d:%02d:%03d",
                timeField.Year,
                timeField.Month,
                timeField.Day,
                timeField.Hour,
                timeField.Minute,
                timeField.Second,
                timeField.Milliseconds));
}
2014-1-27 21:17
0
游客
登录 | 注册 方可回帖
返回
//