문제

나는 디버깅 모드에서 프로그램을 실행 한 다음 주 양식을 닫음으로써 그만 두십시오.

출력 창에서 다음 메시지를 볼 수 있습니다.

Uninit : Still Alive 1The program "[1432] App1.exe: Managed (v4.0.30319)" was ended with code 0 (0x0).
.

"injoit : still arive 1"이 무엇을 의미하는지 궁금합니다.

아무도 알고 있습니까 ??? 나는 언제나 어떤 시점에서 예기치 않은 일을 촉구하고 "아직도 살아있는"메시지가 나에게 유망하지는 않습니다.

도움말 주셔서 감사합니다!

도움이 되었습니까?

해결책

로 생성 된 진단 메시지입니다. OutputDebugString () . 그것은 당신이 종속성이있는 DLL 중 하나에 존재합니다. 정확한 의미는 해석이 필요하지만 "초기화되지 않은"은 "초기화되지 않은", DLL이 언로드 될 때 발생하는 일종의 일종입니다. 그리고 "아직도 살아있는 1"은 바닥 매트를 홱 움직이게하기 전에 당신이 자신의 구성 요소를 제대로 종료하지 못하지 않아서 DLL의 프로그래머가 당신을 제대로 종료하지 못한다는 것을 의미 할 것입니다.

메시지가 Line-Break ( "\ n")이 누락되어 프로그래머가 OutputDebugString을 사용할 때 발생하는 꽤 표준 실수입니다.

이 작업을 수행하는 DLL을 찾는 두 가지 기본 방법. 첫 번째 것은 프로젝트 + 속성, 디버그 탭으로 무성한 디버깅을 사용하여 "기본 코드 디버깅 사용"확인란을 선택하는 것입니다. DLL을 언로드 알림은 진단 메시지에 가깝게되어야합니다.

보다 안정적으로 Sysinternals의 프로세스 탐색기를 사용하는 것입니다. 프로세스를 선택하고 Ctrl + D를 눌러로드 한 DLL을 나열하십시오. 메시지의 품질을 감안할 때 Microsoft 저작권이있는 것들을 건너 뛸 수 있습니다. DLL을 하나씩 마우스 오른쪽 단추로 클릭하고 "문자열"탭을보고 DLL 안의 문자열을 볼 수 있습니다. 찾으면 DLL 이름에서 해당 코드를 소유 한 사람을 알아야합니다. 제대로 종료하는 방법을 물어보십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top