TraceMessage은 가변 인수 개수를 갖는 WinAPI 함수입니다. 이 함수는 Windows 추적에서 추적 메시지를 생성하는 printf와 유사한 표기법과 함께 추적 기능입니다. 여기서 기이 한 부분은 전용 인수가 아닌 생략 부호의 일부로 형식 문자열을 수신한다는 것입니다. 이 함수를 내 자신의 함수로 '재정의'할 수 있습니다.이 함수는 TraceMessageVa (줄임표가 아닌 va_args와 같은 TraceMessage와 동일 함)을 호출해야합니다.줄임표 및 va_args 트릭이 필요합니다.
지금까지 그렇게 좋았습니다. 하지만 지금은 생략 된 형식 문자열이있는 sprintf
과 같은 함수를 사용하여 추적 된 메시지에 액세스하려고합니다. 따라서 나는
- 줄임표에서 형식 문자열 인수를 가져와야합니다.
- 첫 번째 인수없이 새 va_list를 만듭니다.
어떻게 할 수 있습니까? Visual Studio 컴파일러 관련 솔루션도 사용할 수 있습니다. 감사!
TraceMessage 용 문서는 사용자가 말하는대로 말하는 것은 아닙니다. –
맞습니다. 그러나 당신은 저를 믿어 주셔야합니다. 또는 이것을 추적 컨텍스트에 관계없이 줄임표와 va_args에 관한 질문으로 취급해야합니다 ... –