「Windowsカーネルのセキュリティおよびドライバの開発」および4.3倍タイマー

「Windowsカーネルのセキュリティおよびドライバ開発」ノートを読んで - インデックスディレクトリ

「Windowsカーネルのセキュリティおよびドライバの開発」および4.3倍タイマー

まず、システムの起動時からのミリ秒数を取得します

/ * 
    関数の影響:オペレーティングシステムの起動が経験からのミリ秒数を求めて
    パラメータ1 MESC:計算結果(ミリ秒)
* / 
無効MyGetTickCount(PULONGミリ秒){ 
    LARGE_INTEGER Tick_countを、
    ULONG myinc = KeQueryTimeIncrement(); // 取得ティック 
    KeQueryTickCount (&Tick_count); // 使用Tickイベントのナノ秒ゲット 
    tick_count.QuadPart * = myinc; 
    tick_count.QuadPart / = 10000 ;
     *ミリ秒= tick_count.LowPartを; 
}

 

第二に、現在のシステム時刻を取得します

/ * 
    機能効果:出力電流の時間
* / 
VOID MyCurTimerStr(){ 
    今LARGE_INTEGER雪、; 
    TIME_FIELDSのnow_fields、
    静的 WCHARのtime_str [ 32 ] = { 0 };
     // 時間取得 
    KeQuerySystemTime、(&雪);
     // ローカルに変換時間 
    (&スノー&ExSystemTimeToLocalTime 今);
     // 人が要素ことを理解すべきでの変換時間 
    RtlTimeToTimeFields(&スノー、&now_fields);
     // ログに出力 
    DbgPrint(%% 2D-2D 4D - %%% 2D-2D- 2D%
        now_fields.Year、now_fields.Month、now_fields.Day、
        now_fields.Hour、now_fields.Minute、now_fields.Second)。
}

 

第三に、タイマー - 継続します

 

 

 

おすすめ

転載: www.cnblogs.com/onetrainee/p/11995710.html