Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
2.6 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1993.
  5. //
  6. // File: stdrpc.hxx
  7. //
  8. // Contents: Private header file for building interface proxies and stubs.
  9. //
  10. // Classes: CStreamOnMessage
  11. //
  12. // Functions:
  13. //
  14. // History: 4-Jul-93 ShannonC Created
  15. // 3-Aug-93 ShannonC Changes for NT511 and IDispatch support.
  16. // 10-Oct-93 ShannonC Changed to new IRpcChannelBuffer interface.
  17. // 22-Sep-94 MikeSe Moved from CINC and simplified.
  18. //
  19. //--------------------------------------------------------------------------
  20. #ifndef __STDRPC_HXX__
  21. #define __STDRPC_HXX__
  22. #define _OLE2ANAC_H_
  23. #include <windows.h>
  24. class CStreamOnMessage : public IStream
  25. {
  26. public:
  27. virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, LPVOID FAR* ppvObj);
  28. virtual ULONG STDMETHODCALLTYPE AddRef();
  29. virtual ULONG STDMETHODCALLTYPE Release();
  30. virtual HRESULT STDMETHODCALLTYPE Read(VOID HUGEP *pv, ULONG cb, ULONG *pcbRead);
  31. virtual HRESULT STDMETHODCALLTYPE Write(VOID const HUGEP *pv,
  32. ULONG cb,
  33. ULONG *pcbWritten) ;
  34. virtual HRESULT STDMETHODCALLTYPE Seek(LARGE_INTEGER dlibMove,
  35. DWORD dwOrigin,
  36. ULARGE_INTEGER *plibNewPosition) ;
  37. virtual HRESULT STDMETHODCALLTYPE SetSize(ULARGE_INTEGER libNewSize) ;
  38. virtual HRESULT STDMETHODCALLTYPE CopyTo(IStream *pstm,
  39. ULARGE_INTEGER cb,
  40. ULARGE_INTEGER *pcbRead,
  41. ULARGE_INTEGER *pcbWritten) ;
  42. virtual HRESULT STDMETHODCALLTYPE Commit(DWORD grfCommitFlags) ;
  43. virtual HRESULT STDMETHODCALLTYPE Revert();
  44. virtual HRESULT STDMETHODCALLTYPE LockRegion(ULARGE_INTEGER libOffset,
  45. ULARGE_INTEGER cb,
  46. DWORD dwLockType) ;
  47. virtual HRESULT STDMETHODCALLTYPE UnlockRegion(ULARGE_INTEGER libOffset,
  48. ULARGE_INTEGER cb,
  49. DWORD dwLockType) ;
  50. virtual HRESULT STDMETHODCALLTYPE Stat(STATSTG *pstatstg, DWORD grfStatFlag) ;
  51. virtual HRESULT STDMETHODCALLTYPE Clone(IStream * *ppstm) ;
  52. CStreamOnMessage(unsigned char **ppMessageBuffer);
  53. CStreamOnMessage(unsigned char **ppMessageBuffer, unsigned long cbMax);
  54. unsigned char *pStartOfStream;
  55. unsigned char **ppBuffer;
  56. unsigned long cbMaxStreamLength;
  57. ULONG ref_count;
  58. };
  59. #endif //__STDRPC_HXX__