windows-nt/Source/XPSP1/NT/com/ole32/idl/internal/comhndl.h
2020-09-26 16:20:57 +08:00

53 lines
1.3 KiB
C

//+-------------------------------------------------------------------
//
// File: comhndl.h
//
// Contents: Implicit COM parameters on raw RPCcalls
//
// History: 24 Apr 95 AlexMit Created
//
//--------------------------------------------------------------------
#ifndef _COMHNDL_H_
#define _COMHNDL_H_
// Define the implicit COM RPC parameters.
#ifdef RAW
#define COM_HANDLE \
[in] handle_t rpc, \
[in, ref] ORPCTHIS *orpcthis, \
[in, ref] LOCALTHIS *localthis, \
[out, ref] ORPCTHAT *orpcthat,
#else
#define COM_HANDLE
#endif
// Define some extra stuff.
#ifdef DO_NO_IMPORTS
#define IMPORT_OBASE
#else
#define IMPORT_OBASE import "obase.idl";
#endif
#ifdef DO_NO_IMPORTS
#define IMPORT_UNKNOWN
#else
#define IMPORT_UNKNOWN import "unknwn.idl";
#endif
// These dummy members adjust the procedure number.
// Since these exist on the raw side, the names have to be
// unique in all interfaces.
#ifdef RAW
#define COM_DEFINES(X) \
IMPORT_OBASE \
HRESULT DummyQueryInterface##X( COM_HANDLE [in] DWORD dummy ); \
HRESULT DummyAddRef##X( COM_HANDLE [in] DWORD dummy ); \
HRESULT DummyRelease##X( COM_HANDLE [in] DWORD dummy );
#else
#define COM_DEFINES(X) IMPORT_UNKNOWN
#endif
#endif // _COMHNDL_H_