Como posso obter o último motivo de reinicialização do Windows
Gostaria de saber qual é a função da API do Windows (se houver) que fornece informações sobre a última fonte de reinicialização do Windows. Existem três principais causas possíveis:
O computador travou em uma tela azulUm usuário ou um programa desligou / reiniciou o computadorUm poder perdidoQuanto mais detalhes eu conseguir, melhor. No entanto, preciso saber pelo menos qual é o motivo dos principais.
Preciso dar suporte ao Windows Vista e Windows 7.
Responda:
Parece que não há API direta para obter essas informações. Em vez disso, precisamos coletar o log de eventos do Windows. As informações de reinicialização do sistema estão localizadas em Visualizador de Eventos / Logs do Windows / Sistema. Aqui estão as várias informações fornecidas pelos IDs do evento:
6005: Inicialização do Windows6006: Desligamento do Windows (corretamente)6008: Desligamento do Windows (inesperadamente)Ainda não entendo a diferença entre energia perdida e falha no sistema, mas é um bom começo.