Tipo complesso StructDefinitionType
Definisce una struttura che include uno o più elementi di dati che si desidera includere con l'evento.
<xs:complexType name="StructDefinitionType"
mixed="true"
>
<xs:sequence>
<xs:element name="data"
type="DataDefinitionType"
maxOccurs="unbounded"
/>
</xs:sequence>
<xs:attribute name="name"
type="string"
use="required"
/>
<xs:attribute name="length"
type="LengthType"
use="optional"
/>
<xs:attribute name="count"
type="CountType"
use="optional"
/>
<xs:anyAttribute
processContents="lax"
namespace="##other"
/>
</xs:complexType>
Elementi figlio
Elemento | Tipo | Descrizione |
---|---|---|
data | DataDefinitionType | Definisce un elemento di dati che si desidera includere nella struttura. |
Attributi
Nome | Tipo | Descrizione |
---|---|---|
count | CountType | Numero di elementi in una matrice di strutture. Questo attributo indica che la struttura definisce una matrice di strutture. È possibile specificare il conteggio effettivo o il nome di un elemento di dati all'esterno della struttura che contiene il conteggio. |
length | LengthType | Non disponibile. Windows Server 2008 e Windows Vista: Lunghezza di questa struttura, in byte. Non disponibile a partire da Windows 7. |
name | string | Nome della struttura. È possibile usare il nome per fare riferimento all'elemento di dati nel frammento XML se si specifica una sezione UserData nel modello. Windows Vista: Questo attributo è facoltativo. |
Commenti
I provider scrivono la struttura come BLOB e non come singoli membri della struttura. Se la struttura C che si scrive contiene puntatori (ad esempio, un puntatore di tipo LPWSTR), i dati dell'evento conterranno il valore del puntatore, non i dati dereferenziati.
Non è consigliabile usare le strutture, ma definire gli elementi di dati per ogni membro e scriverli separatamente. Se si decide di utilizzare la struttura, la struttura deve contenere solo tipi integrali ed è necessario assicurarsi che i membri della struttura siano allineati a un limite a 8 byte. In caso contrario, è probabile che vengano visualizzati errori di allineamento quando si tenta di accedere ai dati. È consigliabile usare la direttiva #pragma pack() per forzare l'allineamento su un limite a 8 byte.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista [solo app desktop] |
Server minimo supportato |
Windows Server 2008 [solo app desktop] |