Data Type Attributes

You can apply these attributes to data types in a typedef statement to further define the usage or effect of the data type.

Attribute Usage
context_handle Identifies a binding handle that maintains state (context) information on a particular server between remote procedure calls from a particular client. Not valid for object interface functions.
handle Specifies a custom handle type specific to the application.
ms_union Controls the NDR alignment of nonencapsulated unions. Use on typedefs for backward compatibility with interfaces built with MIDL 1.0 or 2.0.
pipe Allows transmission of an open-ended stream of typed data across a remote procedure call. An in pipe parameter allows the server to pull the data stream from the client during a remote procedure call. An out pipe parameter allows the server to push the data stream back to the client.
transmit_as Specifies how a data type will be transmitted over a network, used for custom marshaling.
v1_enum Directs that the specified enumerated type be transmitted as a 32-bit entity, rather than the 16-bit default.
wire_marshal Similar to transmit_as but you implement the routines to size, marshal, unmarshal, and free the data.