Windows Seven이 얼마나 자주 재부팅되는지 확인하는 방법은 무엇입니까?


18

시스템 또는 레지스트리에서 Windows가 몇 번 재부팅되었는지에 대한 데이터를 찾아야합니까? 특정 기능을 구현하기 위해이 정보 (OOBE * 프로세스 이후 Windows가 재부팅 된 횟수)를 사용하는 응용 프로그램을 만들고 싶습니다.

Microsoft가 이것을 어딘가에 구현했을 것이라고 확신합니다. 레지스트리 키 또는 이와 비슷한 것을 생각하고 있습니다.

* OOBE-Out of Box 환경에서 처음으로 Windows를 부팅하고 사용자, 암호 및 컴퓨터 이름을 설정할 때 발생하는 프로세스입니다.


이벤트 로그를주의 깊게 살펴보면이를 파악할 수 있지만 실제로 실제로 어딘가에 기록 된 것 같지는 않습니다. 잘만되면 나는 틀렸다!
— Shinrai

답변:


17

각 시작 및 종료는 이벤트 로그에 기록됩니다. 이벤트 뷰어를 열고 시스템 로그 섹션으로 이동하십시오. Filter Current Log이벤트 번호 12 및 13으로 이러한 레코드를 필터링하면 ( 오른쪽 단추 사용 ) 시스템을 종료하고 시작할 때 알리는 이벤트를 가져와야합니다.

이벤트 ID 12는 시스템 시작이고 이벤트 ID 13은 시스템 종료입니다. 또한 이벤트 자체가 이벤트에 기록 된 정확한 시간을 제공합니다.

애플리케이션이 이벤트 ID 12의 이벤트 수를 계산하도록하여 원하는 것을 제공 할 수 있습니다.


5
좋은 생각이지만주의 사항이 있습니다. 이벤트 로그는 사용자가 지울 수 있으며 최대 크기로 제한되므로 특히 이전 설치 인 경우 총 재시작 횟수를 반드시보고하지는 않습니다.
— rmart

@rmart 나는 보통 사용자가 이벤트 로그를 정리할 수 있을지 모르겠지만 둘 다 공정한 포인트입니다. 위에서 언급 한대로 SMART 데이터를 사용하는 것이 더 좋은 방법 일지 모르지만주의 사항이없는 것도 아닙니다.
— Connor W

12

답을 찾았습니다.

찾기 :

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

표시되는 10 진수 값은 시스템이 이미 재부팅 된 횟수입니다.


576 번, 매우 흥미로운 질문과 답변. 나에게서 +1
— Joe Taylor

7

다른 방법이 있습니다 : SMART

요즘 대부분의 하드 드라이브는 SMART 정보를 저장합니다. 당신이 관심을 가질만한 두 가지 정보가 있습니다 : 04 Start / Stop Count 12 Power Cycle Count

SMART에 대한 Wikipedia 기사 와 smartmontools의 문서를 확인하십시오 .

smartmontools는 CLI에서이 데이터를 쿼리 할 수있는 오픈 소스 프로젝트이거나 다양한 GUI를 통해이 데이터를 얻을 수있는 다른 프로그램이 있습니다. Wikipedia SMART 도구 목록


아마도 이것이 이벤트 뷰어를 사용하는 것보다 더 신뢰할만한 방법이라고 생각하지만주의해야 할 점이 있습니다. 드라이브를 처음부터 같은 컴퓨터에 두지 않고 다른 곳에서 변경하거나 사용하지 않으면 정확한 결과를 얻을 수 없습니다. 또한 구형 드라이브는 S..MART를 완전히 지원하지 않으므로 전원주기 정보를 기록하는 드라이브와 그렇지 않은 드라이브를 찾을 수 있습니다.
— Connor W

@Connor W : SMART 정보를 기록하지 않은 종류의 하드 드라이브는 Windows 7을 실행할만큼 강력한 컴퓨터에있을 가능성이 거의 없다고 생각했습니다. 그렇습니다. 그렇습니다. 의지했다. 이벤트 뷰어처럼 ....
— camster342

또한 사용자가 대기 모드를 사용하거나 비활성으로 인해 하드 드라이브가 꺼지면 어떻습니까?
— sinni800

@Sinni : 이것이 04 코드와 12 코드의 차이점입니다. 04는 대기 및 절전 모드를 포함하는 총 하드 드라이브 스핀 업입니다. 12는 PC 종료 또는 최대 절전 모드로 인해 하드 드라이브의 전원이 완전히 꺼지는 곳입니다.
— camster342

2

Windows 7에서 안정성 관리자를 확인하십시오.


3
컴퓨터가 부팅 또는 종료 된 시점을 알려주지는 않습니다.
— 코너 W

1

컴퓨터가 켜진 횟수를 세는 짧은 스크립트 두 개를 작성했습니다.

불행히도 Windows를 시작하고 종료 할 때만 다시 시작하기위한 이벤트 로그가 없습니다.

이 스크립트 event 12는 Windows가 시작될 때 기록되는 이벤트 로그를 검색 합니다. 그런 다음 계산 한 횟수를 알려줍니다.

VBS 스크립트 : 컴퓨터가 켜진 횟수

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 스크립트 : 컴퓨터가 켜진 횟수를 원격으로 계산합니다.

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 

소스 VBS 스크립트 – 수 컴퓨터가 켜진 횟수


링크중인 웹 사이트 (방금 업데이트 한 링크) 인 경우 제휴 관계를 공개해야합니다. superuser.com/help/behavior
— slhck

@slhck-예, 개인 블로그를 참조하고 있습니다. 나는 그 규칙을 몰랐다. 개인 블로그에도있는 콘텐츠를 참조하고 있음을 분명히하기 위해 사용해야하는 표준 라인이 있습니까? 시간이 있었을 때 모든 답변을 오래 전에 게시했는데 도메인 이름을 변경하고 도메인이 만료되기 전에 링크를 업데이트하려고합니다. 개인 블로그를 운영하여 기억하고 지식을 공유하는 데 필요한 사항을 기록하므로 수퍼 유저 간의 교차 게시입니다.
— ovann86

1
"나의 블로그"나 다른 것을 명시 적으로 말하십시오. 만큼 당신이 반드시 실제 해답이 여기에 포함되어, 사람들이하지 않는하게로 가 , 해결책을 얻을 수있는 사이트를 떠나 그것의 벌금을. 세부 사항에 대한 링크를 추가해도 좋습니다.
— slhck
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.