Skip to content

Instantly share code, notes, and snippets.

@matthiaskaiser
Created June 14, 2018 08:39
Show Gist options
  • Save matthiaskaiser/0ce62a59716bb81e9eac900a4461a697 to your computer and use it in GitHub Desktop.
Save matthiaskaiser/0ce62a59716bb81e9eac900a4461a697 to your computer and use it in GitHub Desktop.
IMarshal
class IMarshal : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetUnmarshalClass ( REFIID riid, void *pv, DWORD dwDestContext, void *pvDestContext, DWORD mshlflags, CLSID *pCid) = 0;
virtual HRESULT STDMETHODCALLTYPE GetMarshalSizeMax ( REFIID riid, void *pv, DWORD dwDestContext, void *pvDestContext, DWORD mshlflags, DWORD *pSize) = 0;
virtual HRESULT STDMETHODCALLTYPE MarshalInterface (IStream *pStm, REFIID riid, void *pv, DWORD dwDestContext, void *pvDestContext, DWORD mshlflags) = 0;
virtual HRESULT STDMETHODCALLTYPE UnmarshalInterface (IStream *pStm, REFIID riid, void **ppv) = 0;
virtual HRESULT STDMETHODCALLTYPE ReleaseMarshalData (IStream *pStm) = 0;
virtual HRESULT STDMETHODCALLTYPE DisconnectObject (DWORD dwReserved) = 0;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment