다음을 통해 공유


FormatProperties 구현

네트워크 모니터는 FormatProperties 함수를 호출하여 네트워크 모니터 UI의 세부 정보 창에 표시되는 데이터의 형식을 지정합니다. 일반적으로 FormatProperties 는 프로토콜에 대한 요약 줄의 서식을 지정한 다음 프레임 내에서 프로토콜의 모든 속성 인스턴스의 형식을 지정하기 위해 호출됩니다. 그러나 네트워크 모니터는 특정 파서에 대해 FormatProperties 가 호출되는 횟수를 식별하지 않습니다.

FormatProperties를 호출할 때 네트워크 모니터는 표시되는 각 속성에 대한 PROPERTYINST 구조를 제공합니다. PROPERTYINST 구조체는 표시된 데이터 속성의 서식을 지정하는 데 사용할 함수를 지정하는 PROPERTYINFO 구조체에 대한 포인터를 포함하여 표시할 데이터에 대한 정보를 제공합니다.

참고

PROPERTYINFO 구조는 파서의 속성 데이터베이스에 속성을 추가할 때 지정됩니다.

 

네트워크 모니터는 각 속성 instance 대해 호출할 형식 함수를 식별합니다. PROPERTYINFO 구조체의 InstanceData 멤버는 다음을 지정할 수 있습니다.

FormatPropertyInstance 및 사용자 지정 형식 함수는 네트워크 모니터 UI의 세부 정보 창에 표시되는 서식이 지정된 데이터를 반환합니다.

다음 그림에서는 네트워크 모니터가 각 속성 instance 호출할 함수를 식별하는 방법을 보여 줍니다.

네트워크 모니터가 호출할 함수를 식별하는 방법

다음 절차에서는 FormatProperties를 구현하는 데 필요한 단계를 식별합니다.

FormatProperties를 구현하려면

  • 루프 구조를 사용하여 FormatProperties 함수의 lpPropInst 매개 변수에서 파서에 전달되는 각 PROPERTYINST 구조체에 대한 형식 함수를 호출합니다.

다음은 FormatProperties의 기본 구현입니다.

#include <windows.h>

DWORD BHAPI MyProtocolFormatProperties( HFRAME hFrame,
                                        LPBYTE         pMacFrame,
                                        LPBYTE         pBLRPLATEFrame,
                                        DWORD          nPropertyInsts
                                        LPPROPERTYINST  p)
  {
    while( nPropertyInsts-- > 0)
      {
         ( (FORMAT) p->lpPropertyInfo->InstanceData) ) (p);
         p++;
      }
  return BHERR_SUCCESS;
  }