2013-05-27 2 views
1

Microsoft Windows 작업 관리자가 응용 프로그램을 닫을 때 catch하려고합니다. 이러한 UnloadMode 가능성이 있습니다 : '0 사용자가 폼의 컨트롤 메뉴 상자에서 닫기 명령을 선택했습니다. '1 코드에서 Unload 메서드가 호출되었습니다. '2 현재 Windows 환경 세션이 종료됩니다. '3 Microsoft Windows 작업 관리자가 응용 프로그램을 종료하고 있습니다. '4 MDI 폼이 닫히기 때문에 MDI 자식 폼이 닫힙니다.vb6 Form_QueryUnload (정수로 취소, 정수로 UnloadMode)가 작동하지 않습니다.

코드 :

Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) 
'[do saving] 
End Sub 

하지만 작업 관리자를 사용하여 응용 프로그램을 닫을 때 아무 작업도 수행하지 않습니다. 닫기 버튼을 사용하여 닫기 - 필요한 모든 것을 저장합니다. 문제가 어디에 있습니까?

+0

나는 당신이보고 확인 추측 당신이 경우에 다른 코드 앞에있는 MSGBOX의 UnloadMode을 고집하여 응용 프로그램을 어쩌면 닫 어떤 방식으로 이벤트가 발생? – kjack

+0

당신은 내부에 msgbox를 추가하는 것을 의미합니다 Sub Form_QueryUnload (정수로 취소, 정수로 언로드)? 같은 결과. 작업 관리자를 사용하는 경우 메시지가 없습니다. – babboon

답변

2

작업 관리자의 프로세스 탭을 통해 종료하면 추가 코드가 실행되지 않으며 응용 프로그램 탭을 통해 종료하면 코드가 실행됩니다.

사용자 "vbface"(2003년 12월 29일)으로

:

는 (그래서 나) 즉시 작업 관리자에서 프로세스를 죽이는 프로그램 곳을 죽이고

다른 포럼이 답변을 참조하십시오 더 이상의 사건은 발생하지 않습니다. 그것은 VB에서 END 문을 넣는 것과 같습니다. 정리, 폐쇄 프로세스, 앱 종료가 없습니다.

http://www.xtremevbtalk.com/showthread.php?t=131604