EvtFormatMessage를 사용하여 이벤트에 대한 형식이 지정된 문자열 가져오기

  • 아티클
  • 2023. 07. 17.
  •  

이 문서의 내용

  1. EvtFormatMessage가 이벤트에서 가져올 수 있는 메시지 문자열
  2. 형식이 지정된 문자열을 검색할 수 없는 경우 오류를 처리하는 방법

이 문서에서는 서식이 지정된 문자열을 검색할 수 없는 경우 발생할 수 있는 오류를 사용하고 EvtFormatMessage 처리하여 이벤트에 대한 형식이 지정된 문자열을 가져오는 방법을 설명합니다.

원래 제품 버전: Windows
원래 KB 번호: 2435556

EvtFormatMessage가 이벤트에서 가져올 수 있는 메시지 문자열

이벤트에는 표시를 위해 서식을 지정할 수 있는 지역화된 메시지 문자열이 포함될 수 있습니다. 이벤트에서 메시지 문자열을 얻으려면 함수를 호출합니다 EvtFormatMessage . 이벤트에는 다음 메시지 문자열이 포함될 수 있습니다.

  • 이벤트 자체에 대한 메시지 문자열입니다.
  • 이벤트에 할당된 수준 값을 설명하는 메시지 문자열입니다.
  • 이벤트에 할당된 작업 값을 설명하는 메시지 문자열입니다.
  • 이벤트에 할당된 opcode 값을 설명하는 메시지 문자열입니다.
  • 이벤트에 할당된 키워드 값을 설명하는 메시지 문자열입니다.
  • 이벤트에 할당된 채널 값을 설명하는 메시지 문자열입니다.

요청된 텍스트의 서식을 지정하려면 EvtFormatMessage 이벤트와 연결된 메타데이터 공급자를 사용할 수 있어야 하며 지정된 이벤트에 대한 메타데이터를 포함해야 합니다. EvtFormatMessage 메타데이터 공급자를 사용할 수 없거나 지정된 이벤트에 메타데이터를 사용할 수 없는 경우 함수가 실패할 수 있습니다.

형식이 지정된 문자열을 검색할 수 없는 경우 오류를 처리하는 방법

함수를 사용하는 EvtFormatMessage 방법을 보여 주는 샘플 애플리케이션은 이벤트 메시지 서식 지정에 포함됩니다. 이 샘플에서는 지정된 이벤트()에 사용할 수 있는 메타데이터가 없거나 이벤트 ID를ERROR_EVT_MESSAGE_NOT_FOUND 찾을ERROR_EVT_MESSAGE_ID_NOT_FOUND 수 없는 경우 발생할 수 있는 오류를 처리하는 방법을 보여 주지만 오류를 처리하기 위한 구현은 제공하지 않습니다.

호출 애플리케이션은 호출 EvtFormatMessage 이 요청된 메시지 문자열을 검색하지 못할 때 표시되는 문자열(있는 경우)을 정의합니다. 예를 들어 작업 ID가 0이거나 작업 ID가 0이 아닌 경우 작업 ID가 괄호 안에 있는 작업 ID일 때 EvtFormatMessage 이벤트에 할당된 작업 값을 검색하지 못하면 영어 시스템의 Windows 이벤트 뷰어 None을 표시합니다. 이벤트 명령줄 유틸리티(wevtutil.exe)는 이벤트에 할당된 작업 값을 검색하지 못하면 N/AEvtFormatMessage 를 표시합니다.

Posted by gurupia
,