2012-09-14 3 views
1

우리는 Windows CE 기반의 응용 프로그램을 개발 중입니다. 현재 우리는 릴리스 빌드에서만 발생하는 수많은 데이터 중단 예외로 인해 싸우고 있습니다. 우리는 디버그 스트림을 직렬 포트에 실제로 출력하는 개발 장치의 수가 제한되어 있습니다. 이제 OemDataAbortHandler를 사용하여 진단 목적으로 데이터를 수집하기 위해 Exception의 콘텐츠 (예 : 디버그 스트림에 기록 된 모든 것)에 액세스 할 수 있는지 궁금합니다. 이상적으로 우리는이 같은 데이터를 포함하는 TEXTFILE 만들 수있을 것입니다 : 이제WindowsCE에서 사용자 정의 DataAbortHandler 사용

Exception 'Data Abort' (4): Thread-Id=05a70002(pth=8252169c), 
Proc-Id=03cf000e(pprc=824f3d70) 'XXXX.exe', VM-active=03cf000e(pprc=824f3d70) 'XXXX.exe' 
    PC=400323cc(coredll.dll+0x000223cc) RA=4003361c(coredll.dll+0x0002361c) SP=0102f27c, 
BVA=6464646c 

을 OemDataAbortHandler의 서명은 다음과 같습니다

void OEMDataAbortHandler(void); 

는에 기록 된 데이터에 대한 액세스를 얻을 방법이 있나요 디버그 스트림?

답변

0

구조적 예외 처리 (__try/__except)를 사용하여 데이터 중단 예외를 필터링 할 수 있어야합니다. 예외 시간의 프로세서 상태는 GetExceptionInformation 내장 함수의 CONTEXT 인수로 반환됩니다. documentation for try/except을 참조하십시오.

관련 문제