---
name: "HGLOBAL_UserMarshal"
section: "3w"
platform: "linux"
package: "libwine-dev"
version: "1.4.1-4"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/HGLOBAL_UserMarshal"
---

# HGLOBAL\_UserMarshal(3w)

## NAME

**HGLOBAL\_UserMarshal** (OLE32.@)

## SYNOPSIS

unsigned char \* \_\_RPC\_USER  HGLOBAL\_UserMarshal\
  (\
   ULONG\*         *pFlags*,\
   unsigned char\* *pBuffer*,\
   HGLOBAL\*       *phGlobal*\
  )

## DESCRIPTION

Marshals an **HGLOBAL** into a buffer.

## PARAMS

*pFlags* **\[In\]**  Flags. See notes.

*pBuffer* **\[In\]**  Buffer to marshal the clip format into.

*phGlobal* **\[In\]**  **HGLOBAL** to marshal.

## RETURNS

The end of the marshaled data in the buffer.

## NOTES

Even though the function is documented to take a pointer to a **ULONG** in *pFlags*, it actually takes a pointer to a **USER\_MARSHAL\_CB** structure, of which the first parameter is a **ULONG**. This function is only intended to be called by the **RPC** runtime.

## IMPLEMENTATION

Declared in **"oleidl.h"**.

Implemented in **"dlls/ole32/usrmarshal.c"**.

Debug channel **"ole"**.
