Q&A

  • 윈도우2000 컴터 종료..
안녕하세요.
98에선 잘 되는거 같은데
지금 개발환경은 윈도우 2천입니다.
윈도우2천이 nt 계열이라 그런지 로그오프밖에 안되는군요
강제종료를 해도 로그오프만 되고요.
2천이나 사용할수 잇는 방법이 없을까요?
그럼 수고하세요

        ExitWindowsEx(EWX_FORCE, 0); //강제종료
        ExitWindowsEx(EWX_LOGOFF, 0); //LOG OFF
        ExitWindowsEx(EWX_REBOOT, 0); //Shut Down & Reboot
        ExitWindowsEx(EWX_POWEROFF,0); //Shut Down & Turn Off
        ExitWindowsEx(EWX_SHUTDOWN, 0); //ShutsDown

1  COMMENTS
  • Profile
    채신옥 2002.06.19 19:50
    안녕하세요...
    님의 글을 이제서야 읽었는데 해결하셨는지 모르겠군요...^^
    그래두 뒤늦게 나마 리플을 달아봅니다...

    NT/2000에서는 보안기능이 철저하므로 재부팅 특권을 줘야 재부팅을 할 수 있습니다.
    95/98에서는 ExitWindowsEX(EWX_REBOOT, 0)를 쓰면 보안기능이 없으므로
    즉시 재부팅이 되지만 NT/2000에서는 LogOff가 될것입니다.
    아무리 Admin권한으로 로그인을 하였어도 특권이 없으면 재부팅을 할 수 없는 것이죠...
    다행이 Admin은 자신이 스스로에게 재부팅 특권을 부여할 수 있습니다.
    그럼 먼저 OS 버젼을 알아야 겠죠?

    //=================================================
    //OS Version 알아내기
    //=================================================
    function GetWinVersion: string;
    var
      Version: LongInt;
      lsTemp, sOSVersion: string;
    begin
      Version := GetVersion;
      lsTemp := IntToStr(LoByte(LoWord(Version))) + '.' + IntToStr(HiByte(LoWord(Version)));
      if lsTemp = '4.10' then
         sOSVersion := 'WIN98'
      else                    
         sOSVersion := 'WINNT';
      result := sOSVersion;
    end;
    //=================================================
    //NT/2000에서 재부팅 특권을 주는 함수
    //=================================================
    procedure MyRebootSystem;
    var
      rl: Cardinal;
      hToken: Cardinal;
      tkp: TOKEN_PRIVILEGES;
    begin
      if OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
      begin
        LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tkp.Privileges[0].Luid);

        tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
        tkp.PrivilegeCount := 1;
        AdjustTokenPrivileges(hToken, False, tkp, 0, nil, rl);
        ExitWindowsEX(EWX_REBOOT, 0);
      end;
    end;
    //=================================================

    그럼 즐코 하세요~~~^^
    대~~~한민국 화이링~~~