Unmarshals a SAFEARRAY object from the RPC buffer using information passed in by the LPSAFEARRAY_UserUnmarshal Function function.
[in] Points to data used by RPC.
[in] Points to the current buffer. This pointer may or may not be aligned on entry. LPSAFEARRAY_UserMarshal will align the buffer pointer, marshal the data, and return the new buffer position, which is the address of the first byte after the marshaled object.
[in] Points to the safe array that will be returned as a result of unmarshalling.
[in] Points to an IID for an IDispatch or IUnknown interface. Used when the members of the safe array are IDispatch or IUnknown.
The return value obtained from the returned HRESULT is one of the following.
The stub has received bad data.
The array could not be found.
Insufficient memory for this function to perform.
The SAFEARRAY object does not have the correct dimensions, does not have the correct features, or memory cannot be reallocated.