Click here to Skip to main content
11,493,046 members (55,098 online)
Click here to Skip to main content

Tagged as

How to Get the Last Restart/Reboot Time for Windows

, 12 Feb 2008 CPOL 29.5K 419 16
Rate this:
Please Sign up or sign in to vote.
This code snippet helps to get the last Windows reboot time using C# and interop

Introduction

This code snippet helps to get the time when the Windows OS was last rebooted, using C# code.

Background

It was required for me to get the last restart time for Windows in my program. But unfortunately I couldn't find any direct APIs from .NET. Also some articles suggested using the NetStat command and parsing the output as the available solution.

Using the Code

The following code snippet in C# will be helpful in getting the last restart time for Windows.

IntPtr bufPtr = IntPtr.Zero;
int val = NetStatisticsGet(null, "LanmanWorkstation", 0, 0, out bufPtr);
STAT_WORKSTATION_0 wks = new STAT_WORKSTATION_0();
if (val == 0)
{
    wks = (STAT_WORKSTATION_0)Marshal.PtrToStructure(bufPtr, typeof(STAT_WORKSTATION_0));
}
DateTime aRebootTime = DateTime.FromFileTime(wks.StatisticsStartTime);
System.Console.WriteLine(aRebootTime);       

Points of Interest

The current code shows how to get the last restart time for the workstation. It is also possible get the restart time from the server.

History

  • 12th February, 2008: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Gautham Jayaraman
Software Developer Working for an MNC
India India
Working for an MNC for last 5 years. Currently in application development, mainly ASP.NET. Has also worked with internet security and penetration testing. MCSD .NET certified. Enjoys travelling and food.

Comments and Discussions

 
GeneralLast Reboot Time Pin
Member 39685012-Jan-09 7:41
memberMember 39685012-Jan-09 7:41 
QuestionCan you explain how it works? Pin
adaiye19-Feb-08 21:14
memberadaiye19-Feb-08 21:14 
GeneralAnother way... Pin
VDJ18-Feb-08 23:31
memberVDJ18-Feb-08 23:31 
GeneralSystem.Environment.TickCount Pin
Member 206208818-Feb-08 17:56
memberMember 206208818-Feb-08 17:56 
GeneralRe: System.Environment.TickCount Pin
Predrag Tomasevic23-Nov-11 13:09
memberPredrag Tomasevic23-Nov-11 13:09 
GeneralSecurity Event Log Pin
PeterTheGreat12-Feb-08 5:40
memberPeterTheGreat12-Feb-08 5:40 
You can also use the Security Audit Event Log to get information on shutdowns/startups and reasons for why they happened as well. It also audit's when users login and out. This might provide a .NET Way of doing it as well..

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.150520.1 | Last Updated 12 Feb 2008
Article Copyright 2008 by Gautham Jayaraman
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid