2017-10-17 11 views
-5

私はWindows API関数を試しましたが、どちらが私の要求を満たしているのか分かりませんでした。 GetTickCount64のように、QueryInterruptTimeなどどうすれば計算できますか?コンピュータの電源ボタンを押してからどれぐらいの時間が経過しているか、どのように確認できますか?

+0

私は常にネットワークアダプターからの継続時間を使用します。多分あなたはそれを得ることができますか? – NathanOliver

+3

[プログラムでC++(Windows)でシステム起動時間を取得する](https://stackoverflow.com/questions/10853985/programmatically-getting-system-boot-up-time-in-c-windows) – ZerosAndOnes

+0

「最後の起動からの時間」のようなより賢明なものではなく、「電源ボタンが押されてからの時間」のような具体的なものが必要だと本当に確信していますか? – glennsl

答えて

1

GetTickCount64は、前回のブート時からのミリ秒数を返します。これで十分です。

-2

enter image description here

またGetTickCount()を使用することができます。このように:

#include <Windows.h> 
#include <stdio.h> 

int main(){ 

    int hours; 
    int min; 
    int sec; 
    int rem1; 

    int nSysUpTime = GetTickCount()/1000; 
    int days = nSysUpTime/60/60/24; 
    hours = nSysUpTime/3600; 
    rem1 = nSysUpTime % 3600; 
    min = rem1/60; 
    sec = rem1 % 60; 


    printf("\nComputer Uptime %02d:%02d:%02d \n\n",hours , min ,sec ); 


return 0; 
} 
+1

'GetTickCount()'は49.7日間連続して実行されるたびに0に戻ります。コンピュータはそれよりもはるかに長く動作することがあります。代わりに 'GetTickCount64()'を使用してください。 –

関連する問題