본문 바로가기
C & C++/C & C++

윈도우 부팅모드 알아내기

by izen8 2011. 11. 17.
반응형

윈도우 부팅모드 알아내기

      [ 윈도우의 부팅모드를 알아봅시다 ]
 
 

윈도우를 부팅시 F8을 누른체 부팅을 할 경우, 몇가지 모드로 부팅이 가능합니다. 보통, 윈도우에 이상이 있을 경우 세이프모드로 부팅이 되게 됩니다. 이것을 판단하는 방법입니다.

 
 
 

부팅모드 정보 얻어오기

 

: 여기서 사용되는 함수는 Win32API함수이며 GetSystemMetrics함수를 사용합니다. 여기에 사용되는 인자는 SM_CLEANBOOT를 사용합니다. 이 인자에 대한 코드는 아래와 같습니다.

 

SM_CLEANBOOT

 기                        능

0

정상적인 부팅일 경우

1

세이프 모드(네트워크는 서포트되지 않는다)

2

세이프 모드(네트워크에의 액세스 가능)

 

 

그러므로 다음과 같은 방식으로 코딩이 가능합니다.

 

switch(GetSystemMetrics(SM_CLEANBOOT)) {

case 0:                            //정상적으로 부팅된경우

break;


 

case 1:                            //세이프모드(네트워크 지원안됨)

break;


 

case 2:                            //세이프모드(네트워크 지원됨)

break;

}

반응형

댓글