Leaked source code of windows server 2003
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.

129 lines
2.7 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992 - 1992.
  5. //
  6. // File: crpctyp.hxx
  7. //
  8. // Contents: test basice rpc method calls
  9. //
  10. // Classes: CRpcTypes
  11. //
  12. // History: 06-Aug-92 Ricksa Created
  13. //
  14. //--------------------------------------------------------------------------
  15. #ifndef __RPCTYPES__
  16. #define __RPCTYPES__
  17. #include <otrack.hxx>
  18. #include <rpctyp.h> // interface definition
  19. extern "C" const GUID CLSID_RpcTypes;
  20. //+-------------------------------------------------------------------------
  21. //
  22. // Class: CRpcTypes
  23. //
  24. // Purpose: Class to test parameter passing in ole proxies
  25. //
  26. // Interface: QueryInterface
  27. // AddRef
  28. // Release
  29. //
  30. // History: 06-Aug-92 Ricksa Created
  31. //
  32. //--------------------------------------------------------------------------
  33. class CRpcTypes : INHERIT_TRACKING,
  34. public IRpcTypes
  35. {
  36. public:
  37. CRpcTypes(void);
  38. STDMETHOD(QueryInterface)(REFIID riid, void **ppunk);
  39. DECLARE_STD_REFCOUNTING;
  40. // IRpcTypes methods
  41. STDMETHOD(GuidsIn)(
  42. REFCLSID rclsid,
  43. CLSID clsid,
  44. REFIID riid,
  45. IID iid,
  46. GUID guid);
  47. STDMETHOD(GuidsOut)(
  48. CLSID *pclsid,
  49. IID *piid,
  50. GUID *pguid);
  51. STDMETHOD(DwordIn)(
  52. DWORD dw,
  53. ULONG ul,
  54. LONG lg,
  55. LARGE_INTEGER li,
  56. ULARGE_INTEGER uli);
  57. STDMETHOD(DwordOut)(
  58. DWORD *pdw,
  59. ULONG *pul,
  60. LONG *plg,
  61. LARGE_INTEGER *pli,
  62. ULARGE_INTEGER *puli);
  63. STDMETHOD(WindowsIn)(
  64. POINTL pointl,
  65. SIZEL sizel,
  66. RECTL rectl,
  67. FILETIME filetime,
  68. PALETTEENTRY paletentry,
  69. LOGPALETTE *plogpalet);
  70. STDMETHOD(WindowsOut)(
  71. POINTL *ppointl,
  72. SIZEL *psizel,
  73. RECTL *prectl,
  74. FILETIME *pfiletime,
  75. PALETTEENTRY *ppaletentry,
  76. LOGPALETTE **pplogpalet);
  77. STDMETHOD(OleStgmedIn)(STGMEDIUM *pstgmedium);
  78. STDMETHOD(OleStgmedOut)(STGMEDIUM *pstgmedium);
  79. STDMETHOD(OleClipFmtIn)(STGMEDIUM *pstgmedium);
  80. STDMETHOD(OleClipFmtOut)(STGMEDIUM *pstgmedium);
  81. STDMETHOD(OleStatdataOut)(STATDATA **ppstatdata);
  82. STDMETHOD(OleStatStgOut)(STATSTG *pstatstg);
  83. STDMETHOD(OleFormatEtcIn)(FORMATETC *pformatetc);
  84. STDMETHOD(OleFormatEtcOut)(FORMATETC *pformatetc);
  85. STDMETHOD(OleDvTargetIn)(DVTARGETDEVICE *pdvtargetdevice);
  86. STDMETHOD(OleVerbIn)(OLEVERB *poleverb);
  87. STDMETHOD(OleMenuIn)(OLEMENUGROUPWIDTHS *pmenugroup);
  88. STDMETHOD(OleFrameOut)(OLEINPLACEFRAMEINFO *pframeinfo);
  89. STDMETHOD(OleSnbIn)(SNB snb);
  90. STDMETHOD(VoidPtrIn)(
  91. ULONG cb,
  92. void *pv);
  93. STDMETHOD(VoidPtrOut)(
  94. void *pv,
  95. ULONG cb,
  96. ULONG *pcb);
  97. private:
  98. ~CRpcTypes(void);
  99. };
  100. #endif // __RPCTYPES__