Type-Conversion and Marshaling ACF Attributes

Use these attributes to control how your data is transmitted over the network.

Attribute Usage
encodedecode Instructs MIDL to expose the type or procedure serialization (pickling) routines it generates for the stubs. Your client application can call those routines to marshal data by value.
represent_as Specifies how a data type will be represented on the wire, when the exact nature of a client's data type is unimportant to the server (because it only needs the data itself and not the actual structure), or the actual client type is unknown to MIDL at compile time. For example, if your client application uses a linked list of floating-point numbers, you could specify that the wire-representation of that list be an array of type float.
user_marshal Controls how data is transmitted over the wire by implementing your own marshaling routines. This attribute is useful if you have a data type that is unknown to MIDL or if you are passing information between big-endian and little-endian platforms.

 

The DCE marshaling attributes in_line and out_of_line are not implemented in Microsoft RPC. The MIDL compiler automatically marshals complex data types out-of-line.