Windows W2K(Pro, Server, NT4.0など、XP, 2003を除くNT系のバージョン)で、システム起動時刻(OSのboottime…、UNIX系で言うところの"uptime"のようなもの)を取得する方法を教えて下さい。

もちろん、再起動して起動時刻を取得するといった方法は除きます。

回答の条件
  • 1人2回まで
  • 登録:2006/06/11 22:22:02
  • 終了:2006/06/18 22:25:03

回答(5件)

id:kurukuru-neko No.2

kurukuru-neko回答回数1844ベストアンサー獲得回数1552006/06/11 22:50:30

ポイント20pt

<説明不足>

 GetTickxx により起動してからの時間が

 わかるので現在時刻から GetTickxxの置換を

引けば起動時間がわかります。

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja...

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja...

例:

GetTickCount();

GetSystemTimeAsFileTime();

時間を引いて

FileTimeToLocalFileTime();

  or

FileTimeToSystemTime

id:atmcjj

kurukuru-neko 様

一番最初に一番的確な(私の意図を理解してくれた)回答に感謝します。

精度はそれほど要求しないのですが(サーバの稼働時間を監視するため、snmpイベントで定期的に通知したい…)MSDN情報の「システムを 49.7 日間連続して動作させると、経過時間は 0 に戻ります」は困りますので(こんな短期間でリブートさせられない…)、URL先で記載されている注意事項をよく読んで、コーディングしてみます。

2006/06/12 11:38:14
id:HONMA9691 No.3

HONMA9691回答回数2529ベストアンサー獲得回数362006/06/12 04:33:09

ポイント20pt

http://www.vector.co.jp/soft/win95/util/se297925.html

システム起動時刻とシステム停止時刻を記録するVBScript

id:atmcjj

折角の回答ですが、私の質問の仕方が悪かったのか「再起動して起動時刻を取得するといった方法は除きます」と言う主旨は、今稼働中のサーバを止めずに何時起動したか、起動後何時間経過したかを取得したかったわけで、同スクリプトでは目的を達せられないように思います。

2006/06/12 11:41:37
id:daiyokozuna No.4

daiyokozuna回答回数3388ベストアンサー獲得回数752006/06/12 04:43:56

ポイント20pt

OnToOff

Windowsの起動と終了時間を記録する

http://www.vector.co.jp/soft/win95/util/se263129.html?y



Logon/off Time Logger

Windowsの起動時(ログオン時)と終了時(ログオフ時)の時刻をユーザ名と共にログファイルに記録

http://www.vector.co.jp/soft/win95/util/se284513.html?y

id:atmcjj

折角の回答ですが、私の質問の仕方が悪かったのか「再起動して起動時刻を取得するといった方法は除きます」と言う主旨は、今稼働中のサーバを止めずに何時起動したか、起動後何時間経過したかを取得したかったわけで、同プログラムでは目的を達せられないように思います。

2006/06/12 11:42:08
id:pikupiku No.5

pikupiku回答回数3043ベストアンサー獲得回数732006/06/12 07:01:50

id:atmcjj

折角の回答ですが、私の質問の仕方が悪かったのか「再起動して起動時刻を取得するといった方法は除きます」と言う主旨は、今稼働中のサーバを止めずに何時起動したか、起動後何時間経過したかを取得したかったわけで、同プログラムでは目的を達せられないように思います。

3件同様な回答を頂いているので、これは質問の仕方が不適切であったと反省しております。

2006/06/12 11:43:27
  • id:kurukuru-neko

    サンプルソースがありました。
    レジストリーより取得すれば、49.7 の問題はありません。

    http://ssp.shillest.net/tmp/UpTime.cpp

    正確な起動時間を計算する場合、
    OSの時計はつねに正しい時刻に補正
    されているある必要があります。


  • id:atmcjj
    さらなる kurukuru-neko 様のコメントありがとうございます。
    実は、OS起動後の経過時刻と現在の時刻の引き算に苦労して(関数の返す型が受け取る方が異なりうまく引き算できない)、コードが完成していませんでした。
    ご案内いただきましたサンプルで再度でチャレンジです。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません