릴리스 모드에서 TRACE 매크로를 활성화하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/27622

  •  09-06-2019
  •  | 
  •  

문제

TRACE 매크로 은 코드가 디버그 모드에서 컴파일 될 때 디버거에 진단 메시지를 출력하는 데 사용할 수 있습니다. 출시 모드에서 동일한 메시지가 필요합니다.이를 달성하는 방법이 있습니까?

(릴리스 모드에서 TRACE를 사용하지 말아야하는 이유에 대해 시간을 낭비하지 마세요 . :-)

도움이 되었습니까?

해결책

사실 TRACE 매크로는 OutputDebugString보다 훨씬 더 유연합니다.printf () 스타일 형식 문자열과 매개 변수 목록을 사용하는 반면 OutputDebugString은 단일 문자열을 사용합니다.릴리스 모드에서 전체 TRACE 기능을 구현하려면 다음과 같이해야합니다. 라코 디스

다른 팁

몇 년 전 비슷한 기능이 필요했기 때문에 다음 코드를 조합했습니다.예를 들어 파일에 저장하십시오.rtrace.h, stdafx.h 끝에 포함하고 _RTRACE를 프리 프로세서가 정의하는 릴리스 모드에 추가합니다.

어쩌면 누군가가 그것을 사용할 수있을 것입니다 :-)

라코 디스

내가 본 것 중 가장 단순한 코드 라코 디스

참조 http://alax.info/blog/1351

MFC에서 TRACE는 ATLTRACE로 정의됩니다.그리고 다음과 같이 정의되는 릴리스 모드에서 : 라코 디스

따라서 MFC에서 기본 제공되는 TRACE를 사용하면 TRACE 텍스트가 기록되지 않기 때문에 실제로 읽을 수 없습니다.대신 고유 한 TRACE 함수를 작성한 다음 TRACE 매크로를 다시 정의 할 수 있습니다.다음과 같이 할 수 있습니다. 라코 디스

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