RPC Data Marshaling Functions

The functions in this section are Automation implementations of the ACF-type user_marshal attribute, which provides an efficient way to marshal custom data types that are unknown to MIDL.

In this section

Topic Description
BSTR_UserFree
Frees resources on the server side when called by RPC stub files.
BSTR_UserFree64
Frees resources on the server side when called by RPC stub files.
BSTR_UserMarshal
Marshals a BSTR object into the RPC buffer.
BSTR_UserMarshal64
Marshals a BSTR object into the RPC buffer.
BSTR_UserSize
Calculates the wire size of the BSTR object, and gets its handle and data.
BSTR_UserSize64
Calculates the wire size of the BSTR object, and gets its handle and data.
BSTR_UserUnmarshal
Unmarshals a BSTR object from the RPC buffer.
BSTR_UserUnmarshal64
Unmarshals a BSTR object from the RPC buffer.
LPSAFEARRAY_Marshal
Marshals a SAFEARRAY object to a user's RPC buffer on the server using information passed in by the LPSAFEARRAY_UserMarshal function.
LPSAFEARRAY_Size
Calculates the wire size of the SAFEARRAY object, and gets its handle and data needed by the LPSAFEARRAY_UserSize function.
LPSAFEARRAY_Unmarshal
Unmarshals a SAFEARRAY object from the RPC buffer using information passed in by the LPSAFEARRAY_UserUnmarshal function.
LPSAFEARRAY_UserFree
Frees resources on the server side when called by RPC stub files.
LPSAFEARRAY_UserFree64
Frees resources on the server side when called by RPC stub files.
LPSAFEARRAY_UserMarshal
Marshals data from the specified SAFEARRAY object to the user's RPC buffer on the client or server side.
LPSAFEARRAY_UserMarshal64
Marshals data from the specified SAFEARRAY object to the user's RPC buffer on the client or server side.
LPSAFEARRAY_UserSize
Calculates the wire size of the SAFEARRAY object, and gets its handle and data.
LPSAFEARRAY_UserSize64
Calculates the wire size of the SAFEARRAY object, and gets its handle and data.
LPSAFEARRAY_UserUnmarshal
Unmarshals a SAFEARRAY object from the RPC buffer.
LPSAFEARRAY_UserUnmarshal64
Unmarshals a SAFEARRAY object from the RPC buffer.
VARIANT_UserFree
Frees resources on the server side when called by RPC stub files.
VARIANT_UserFree64
Frees resources on the server side when called by RPC stub files.
VARIANT_UserMarshal
Marshals a VARIANT object into the RPC buffer.
VARIANT_UserMarshal64
Marshals a VARIANT object into the RPC buffer.
VARIANT_UserSize
Calculates the wire size of the VARIANT object, and gets its handle and data.
VARIANT_UserSize64
Calculates the wire size of the VARIANT object, and gets its handle and data.
VARIANT_UserUnmarshal
Unmarshals a VARIANT object from the RPC buffer.
VARIANT_UserUnmarshal64
Unmarshals a VARIANT object from the RPC buffer.

Conversion and Manipulation Functions