¿Cómo averiguar con qué frecuencia se reinicia Windows Seven?

18

¿En qué parte del sistema o registro debo buscar datos sobre cuántas veces se ha reiniciado Windows? Quiero crear una aplicación que use esta información (cuántas veces se ha reiniciado Windows desde el proceso OOBE *) para implementar una característica específica.

Estoy seguro de que Microsoft puede haber implementado esto en alguna parte. Estoy pensando en una clave de registro o algo así.

* OOBE: experiencia lista para usar, este es el proceso que ocurre cuando inicia Windows por primera vez y configura el nombre de usuario, la contraseña y la computadora.

Diogo
fuente
A través de una cuidadosa lectura de los registros de eventos, puede resolver esto, pero no creo que en realidad esté registrado específicamente en algún lugar ... hmm. ¡Ojalá me equivoque!
Shinrai

Respuestas:

17

Cada inicio y apagado se registra en los registros de eventos. Abra el Visor de eventos y vaya a la sección Registros del sistema. Si filtra estos registros (Use el Filter Current Logbotón de la derecha) por los Números de evento 12 y 13, debería recibir los eventos que notifican cuando el sistema se está apagando y se está iniciando.

El ID de evento 12 es el sistema que se inicia, el ID de evento 13 es el sistema que se apaga. También proporciona la hora exacta en que se registró el evento en el evento mismo.

Puede hacer que su aplicación cuente la cantidad de eventos con el Id. De evento 12, que le dará lo que desea.

Connor W
fuente
55
Bien pensado, pero hay advertencias: los registros de eventos pueden ser borrados por un usuario, y están limitados a un tamaño máximo, por lo que no necesariamente informará la cantidad total de reinicios, especialmente si se trata de una instalación anterior.
rmart
@rmart No sé si el usuario promedio eliminaría los registros de eventos, pero ambos son puntos justos. Creo que usar los datos SMART como se mencionó anteriormente es probablemente una mejor manera, pero eso no está exento de advertencias.
Connor W
12

Encontré la respuesta.

Encontrar más:

"HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters\BootId" 

El valor, en decimal, que verá es la cantidad de veces que su sistema ya se reinició.

Diogo
fuente
576 veces, una pregunta y respuesta muy interesantes. +1 de mi parte
Joe Taylor
7

Aquí hay otra forma: INTELIGENTE

La gran mayoría de los discos duros actualmente almacenan información SMART. Hay dos piezas de información que pueden interesarle: 04 Cuenta de inicio / parada 12 Cuenta de ciclo de energía

Consulte el artículo de wikipedia sobre SMART y posiblemente la documentación de smartmontools.

smartmontools es un proyecto de código abierto que puede consultar estos datos en una CLI, o existen otros programas que pueden obtener estos datos con varias GUI: lista de Wikipedia de herramientas SMART

camster342
fuente
Creo que este es probablemente un método más confiable que usar el Visor de eventos, pero también tiene sus advertencias. A menos que la unidad haya estado en la misma computadora desde el primer día, sin haber sido cambiada o utilizada en otro lugar, no obtendrá resultados precisos. Además, creo que las unidades más antiguas no son totalmente compatibles con S..MART, por lo que puede encontrar algunas unidades que registran la información del ciclo de encendido y otras que no.
Connor W
@Connor W: Supuse que el tipo de discos duros que no registran información SMART era bastante improbable que estuviera en una máquina lo suficientemente potente como para ejecutar Windows 7, pero sí, tiene toda la razón en que no puede ser Confiado en. Al igual que el visor de eventos ...
camster342
Además, ¿qué pasa si el usuario usa el modo de espera o el disco duro se apaga debido a la inactividad?
sinni800
@Sinni: Esa es la diferencia entre el código 04 y el código 12. 04 es un total de revoluciones del disco duro que incluiría modos de espera y ahorro de energía. 12 es donde el disco duro pierde energía por completo, desde la PC que se apaga o entra en hibernación.
camster342
2

Consulte el Administrador de confiabilidad en Windows 7

uSlackr
fuente
3
Sin embargo, esto realmente no te dice cuándo la computadora se ha encendido o apagado.
Connor W
1

He escrito dos guiones cortos que pueden contar la cantidad de veces que una computadora se ha encendido.

Desafortunadamente, no hay un registro de eventos específicamente para reinicios, solo para cuando Windows se inicia y se apaga.

Este script busca el registro de eventos event 12que se registra cuando se inicia Windows. Luego te dice cuántas veces ha contado.

VBS Script: cuenta el número de veces que la computadora se ha encendido

count = 0
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colLoggedEvents = objWMIService.ExecQuery _
("Select * from Win32_NTLogEvent Where Logfile = 'System'" _
& " and EventCode = '12'")
For Each objEvent in colLoggedEvents
count = count + 1
Next
wscript.echo "Number of times operating system has started:   " & count

VBS Script: cuenta remotamente el número de veces que la computadora se ha encendido:

count = 0
strComputer=InputBox ("Enter the network name for the remote computer")
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colLoggedEvents = objWMIService.ExecQuery _
("Select * from Win32_NTLogEvent Where Logfile = 'System'" _
& " and EventCode = '12'")
For Each objEvent in colLoggedEvents
count = count + 1
Next
wscript.echo "Number of times operating system has started:   " & count 

Script VBS de origen : recuento Número de veces que la computadora se ha encendido

ovann86
fuente
Si este es su sitio web al que se está vinculando (aquellos enlaces que acaba de actualizar), tenga en cuenta que debe divulgar su afiliación a él. Ver superuser.com/help/behavior
slhck
@slhck: sí, estoy haciendo referencia a mi blog personal. No estaba al tanto de esas reglas. ¿Hay una línea estándar que debería usar para dejar en claro que estoy haciendo referencia a contenido que también está en mi blog personal? Publiqué todas las respuestas hace mucho tiempo cuando tuve tiempo, estoy cambiando los nombres de dominio y quiero actualizar los enlaces antes de que caduque el dominio. Ejecuto mi blog personal para registrar cosas que necesito recordar y compartir conocimientos, de ahí la publicación cruzada entre superusuario.
ovann86
1
Por favor, sea explícito y diga "mi blog" o algo así. Siempre y cuando se asegure de que las respuestas reales estén contenidas aquí, y que las personas no tengan que abandonar el sitio para obtener una solución, está bien. Agregar enlaces para obtener detalles siempre está bien.
slhck