type_UserFree 函数

<type>_UserFree 函数是 [wire_marshal] 和 [ user_marshal] 属性的帮助程序函数。 存根调用此函数以释放服务器端的数据。 函数定义为:

void __RPC_USER  <type>_UserFree(
    unsigned long __RPC_FAR * pFlags,
    <type_name>  __RPC_FAR *  pMyObj );

<函数名称中的类型>表示 [wire_marshal][user_marshal] 类型定义中指定的用户类型。

pFlags 参数是指向无符号长标志字段的指针。 标志的上半字包含 OSF DCE 为浮点、字节顺序和字符表示形式定义的 NDR 数据表示标志。 下部单词包含 COM 通道定义的封送上下文标志。 type_UserSize函数中介绍了字段中标志的确切布局。

pMyObj 参数是指向用户类型对象的指针。 NDR 引擎释放顶级对象。 你负责释放顶级对象可能指向的任何对象。

必须在本地捕获和处理异常,不得允许异常在调用堆栈上传播。

user_marshal和wire_marshal封送规则

wire_marshal

user_marshal