> 백엔드 개발 > C++ > vs2010이 64 비트 윈 포름 앱에서 처리되지 않은 예외 메시지를 표시하지 않는 이유는 무엇입니까?

vs2010이 64 비트 윈 포름 앱에서 처리되지 않은 예외 메시지를 표시하지 않는 이유는 무엇입니까?

Susan Sarandon
풀어 주다: 2025-02-01 22:01:09
원래의
595명이 탐색했습니다.

C#및 .NET Framework 4를 사용하여 VS2010에서 새로운 Windows Forms 응용 프로그램을 생성 할 때 사용자는 처리되지 않은 이상에 대해 비정상적인 동작을 겪었습니다. Form1_load 프로세싱 프로그램에 특정 코드를 추가 한 후 특정 라인의 비정규 특이한 메시지가 표시되지 않을 것으로 예상됩니다. 반대로 코드 실행에는 오류가 없으며 응용 프로그램은 계속 실행됩니다.

이 특수한 행동은 WOW64 아날로그 레이어를 통해 64- 비트 Windows 7과 상호 작용하는 방법에 기인합니다. 문제는이 레이어가 64 비트 창 관리자가 생성 한 알림에 의해 생성 된 코드의 이상을 가로 채는 것입니다. 결과적으로 디버거는 예외를 식별하고 입력 할 수 없었습니다.

이 문제를 해결하기 위해 몇 가지 해결책이 제안되었습니다. 플랫폼 대상을 ANDYCPU로 설정하고 선택한 "32- 비트"를 취소하십시오. 이 방법은 응용 프로그램을 64 비트 프로세스로 변경하여 WOW64 시뮬레이션 레이어 및 관련 비정상적인 문제를 제거했습니다. 그러나 "편집 및 계속"기능에 영향을 줄 수 있으며 32 비트 코드에 의존하는 것이 불가능할 수 있습니다.

기타 솔루션

"Debug"에서 "Odoma"에서 CLR은 "Throwing"Check Box를 활성화하고 강제 디버거는 비정상적인 코드 라인을 중지합니다.

로드 이벤트 처리 프로그램에서 Fairfast Processing을 사용한 시도/캐치 블록.

Debug 모드에서 비정상적인 캡처를 비활성화하려면 Main ()에서

를 설정합니다. 로드 이벤트 처리 프로그램에서 코드의 필요성을 다시 평가하고 대체 이벤트 처리 프로그램 또는 생성자를 사용하여 적절한 코드를 배치하십시오. Windows 8 이상으로 업그레이드하여 WOW64 문제가 해결되었습니다.

위 내용은 vs2010이 64 비트 윈 포름 앱에서 처리되지 않은 예외 메시지를 표시하지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿