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.