VM웨어 워크 스테이션 뭔가 아주 멋진 수행합니다방지 Windows 종료
일반적으로, 우리는 "이 프로그램은 Windows를 방해하는 볼 것 새 "1 가상 머신이 사용 중임을 알리는 대신"종료 중 "메시지가 표시됩니다.
VM웨어는 어떻게합니까? Google에서 API를 찾을 수 없었습니다.
VM웨어 워크 스테이션 뭔가 아주 멋진 수행합니다방지 Windows 종료
일반적으로, 우리는 "이 프로그램은 Windows를 방해하는 볼 것 새 "1 가상 머신이 사용 중임을 알리는 대신"종료 중 "메시지가 표시됩니다.
VM웨어는 어떻게합니까? Google에서 API를 찾을 수 없었습니다.
Vista에서 도입 된 변경 사항은 모두 here에서 읽을 수 있습니다. 이 기사를 매우 신중하게 읽어야합니다.
찾고있는 API는 ShutdownBlockReasonCreate
, ShutdownBlockReasonDestroy
및 ShutdownBlockReasonQuery
입니다. 이 API는 Vista/2008 서버에서만 사용할 수 있습니다. 2000/XP에서 폴백 동작을 구현해야합니다.
종료를 차단해야하는 경우 ShutdownBlockReasonCreate
(으)로 핸들을 기본 창에 전달하고 이유를 문자열로 전달하십시오. 이 문자열은 차단 된 대화 상자에 표시되는 것으로, 즉 스크린 샷에서 '1 개의 가상 머신이 사용 중입니다.'입니다.
종료를 차단하는 작업이 완료되면 ShutdownBlockReasonDestroy
을 호출합니다.
모든 조각을 맞추기 위해서는 여전히 WM_QUERYENDSESSION
을 구현해야합니다. 이것은 실제로 시스템 종료를 차단하는 부분입니다.
XP에서도 WM_ENDSESSION
에 응답해야하며 앱이 종료를 막는 경우 정중 한 이유를 나타내는 메시지가 표시됩니다. 그렇게하지 않으면 컴퓨터가 종료 지시를 무시하는 이유에 대해 사용자가 머리를 긁적 거리게됩니다.
[WM_QUERYENDSESSION에 응답하는 것을 잊지 마십시오.] (http://msdn.microsoft.com/en-us/library/ms700677(v=vs.85).aspx) – bzlm
Ahh, 감사합니다! Google을 통해 이들을 찾았지 만 설명서가 UI에 영향을 미친다는 점에서 설명서가 그다지 효과적이지 않으므로 메시지 상자 (예 : 메시지 상자 사용)가 표시 될 것이라고 생각했습니다. – foxy
열쇠는 제가 답변의 첫 문장에서 링크 한 방언입니다. 종료 처리에 대한 안내입니다. API 문서는 항상 조금 더 간결합니다. –
명령 줄에서 shutdown 명령을 사용할 때 표시 할 사용자 지정 종료 메시지를 지정할 수 있습니다. 아마도 이것은 관련이 있습니까? – stijn