Share via


TraceLoggingSocketAddress-Makro (traceloggingprovider.h)

TraceLogging-Wrappermakro , das dem Ereignis ein Feld mit einer Socketadresse hinzufügt.

Syntax

void TraceLoggingSocketAddress(
  [in]            pValue,
  [in]            cbValue,
  [in, optional]  __VA_ARGS__
);

Parameter

[in] pValue

Ein Zeiger auf eine sockaddr-Struktur.

[in] cbValue

Die Größe des Werts in Bytes, auf den der pValue-Parameter verweist.

Hinweis

Die für ein sockaddr-Feld erforderliche Datenmenge variiert je nach Adresstyp. Wenn die Daten in einer Union-Variablen gespeichert werden, müssen Sie den cbValue-Parameter auf die Größe des richtigen Union-Elements (oder auf die Größe der Union) festlegen, um zu vermeiden, dass die Daten abgeschnitten werden.

[in, optional] __VA_ARGS__

Optionale Name-, Beschreibungs- und Tagsparameter für die Felddefinition.

TraceLoggingSocketAddress kann mit 2, 3, 4 oder 5 Parametern angegeben werden. Wenn kein Parameter angegeben ist, wird eine Standardeinstellung verwendet. TraceLoggingSocketAddress(&x.sockAddr, sizeof(x.sockAddr)) entspricht beispielsweise TraceLoggingSocketAddress(&x.sockAddr, sizeof(x.sockAddr), "&x.sockAddr", "", 0).

  • [in, optional] name

    Der Name, der für das Ereignisfeld verwendet werden soll. Falls angegeben, muss der name-Parameter ein Zeichenfolgenliteral (keine Variable) sein und darf keine "\0"-Zeichen enthalten. Wenn nicht angegeben, basiert der Name des Ereignisfelds auf pValue.

  • [in, optional] description

    Die Beschreibung des Werts des Ereignisfelds. Falls angegeben, muss der description-Parameter ein Zeichenfolgenliteral sein und im PDB enthalten sein.

  • [in, optional] tags

    Ein konstanter ganzzahliger Wert für die Kompilierzeit. Die niedrigen 28 Bits des Werts werden in die Metadaten des Felds aufgenommen. Die Semantik dieses Werts wird vom Ereignisconsumer definiert. Während der Ereignisverarbeitung kann dieser Wert aus dem Feld EVENT_PROPERTY_INFO Tags abgerufen werden.

Rückgabewert

Keine

Bemerkungen

TraceLoggingSocketAddress(pValue, cbValue, ...) kann als Parameter für einen Aufruf eines TraceLoggingWrite-Makros verwendet werden. Jeder TraceLoggingSocketAddress-Parameter fügt dem Ereignis ein Feld hinzu.

Der Wert kann ein beliebiger Windows-Sockaddr-Typ sein, z. B. SOCKADDR, SOCKADDR_IN, SOCKADDR_IN6, SOCKADDR_STORAGE usw. Das Ereignis zeichnet die Binären Rohdaten und die Datengröße auf. Der Ereignisdecoder verwendet das sa_family Feld, um den tatsächlichen Typ der Socketadresse zu bestimmen.

Hinweis

Nicht alle Decoder unterstützen alle Sockaddr-Familientypen. Wenn ein nicht unterstützter sockaddr auftritt, kann der Decoder das Feld als Binäre Rohdaten decodieren, anstatt es als Adresse zu formatieren.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile traceloggingprovider.h

Weitere Informationen

TraceLoggingWrite

TraceLogging-Wrappermakros