8

重複の可能性:
ビルド日付の表示
Windowsがいつ起動またはシャットダウンしたかを知る方法は?

私の目的のために、現在の時刻とサーバーが最後に再起動された時刻との時間(分)の差を計算するC#実行可能ファイルを作成しています。

私が現在行っているのは、cmd-> "net stats server"からの出力をキャプチャして解析し、新しいオブジェクトを作成して、それをDateTimeオブジェクトと比較することです。DateTime.NowTimeSpan

サードパーティのダウンロードを使用せずにこれを行うためのよりクリーンな方法はありますか?「netstatsserver」のすべての日付形式が期待どおりの形式であるとは限らないので、怖いです。

**私の悪いことを編集してください、これは重複です、しかしそれが価値があるもののために私の解決策はこれを使用していました:

float ticks = System.Environment.TickCount;
Console.WriteLine("Time Difference (minutes): " + ticks / 1000 / 60);
Console.WriteLine("Time Difference (hours): " + ticks / 1000 / 60 / 60);
Console.WriteLine("Time Difference (days): " + ticks / 1000 / 60 / 60 / 24);
4

2 に答える 2

11

この答えはあなたを助けるはずです。システムが最後に再起動されたのはいつかを知りたい場合は、稼働時間の値を取得して、現在の日時から差し引いてください。

リンクされた回答からのコード

public TimeSpan UpTime {
    get {
        using (var uptime = new PerformanceCounter("System", "System Up Time")) {
            uptime.NextValue();       //Call this an extra time before reading its value
            return TimeSpan.FromSeconds(uptime.NextValue());
        }
    }
}
于 2012-07-19T14:13:09.193 に答える
1

WMIを使用してpowsershellでこれを行うことができます

$wmi = Get-WmiObject -Class Win32_OperatingSystem -Computer "RemoteMachineName"
$wmi.ConvertToDateTime($wmi.LastBootUpTime)

このようなもの...

このルートを使用することにし、WMIを使用してPowerShellについて詳しく知りたい場合は、非常に便利なリンクhttp://www.powershellpro.com/powershell-tutorial-introduction/powershell-wmi-methods/

于 2012-07-19T14:12:33.250 に答える