Q&A

  • 윈 2000에서 종료하는 법?...이건 log off밖에 안되요.ㅠ.ㅠ
NT에서 종료하는 법이 올라와 있더라구요...

근데 종료는 안되고 재시작이 되요..방법좀 갈켜주세요..



var

PreviosPrivileges : ^TTokenPrivileges;

TokenPrivileges : TTokenPrivileges;

ProcessHandle : THandle;

tmp : Integer;

begin

if not OpenProcessToken( GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES+TOKEN_QUERY,ProcessHandle ) then

Exit;



LookupPrivilegeValue( '', 'SeShutdownPrivilege', TokenPrivileges.Privileges[0].Luid );

TokenPrivileges.PrivilegeCount := 1;

TokenPrivileges.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;

tmp := 0;

PreviosPrivileges := nil;

AdjustTokenPrivileges(ProcessHandle, False, TokenPrivileges, 0, PreviosPrivileges^, tmp);

if not GetLastError()=ERROR_SUCCESS then

Exit;

if not InitiateSystemShutdown( '', '', 0, True, True ) then

Exit;

TokenPrivileges.Privileges[0].Attributes := 0;

AdjustTokenPrivileges( ProcessHandle, False, TokenPrivileges, 0,PreviosPrivileges^, tmp );

end;



이걸사용해서 쓰면요...재시작이 되요...

윈도 2000에서 종료하는 법은 이게 아닌가요?...아님 무엇을 바꾸어야 할지...



0  COMMENTS