windows-nt/Source/XPSP1/NT/com/oleutest/balls/idl/rawrpc.idl
2020-09-26 16:20:57 +08:00

60 lines
1.8 KiB
Plaintext

//[ IRawRpc_itf
//+-------------------------------------------------------------------
//
// Interface: IRawRpc
//
// Purpose: Interface for testing Rpc calls via Raw Rpc interfaces
//
// History: 23-Nov-92 Rickhi Created
//
// Notes:
//
//--------------------------------------------------------------------
[ uuid(00000145-0001-0008-C000-000000000046),
pointer_default(unique) ]
interface IRawRpc
{
import "wtypes.idl";
// tells server process to exit.
SCODE Quit([in] handle_t hRpc);
// test passing void parameters
SCODE Void([in] handle_t hRpc);
SCODE VoidRC([in] handle_t hRpc);
// test passing void ptr parameters ie byte arrays
SCODE VoidPtrIn([in] handle_t hRpc,
[in] ULONG cb,
[in, size_is(cb)] BYTE *pv);
SCODE VoidPtrOut([in] handle_t hRpc,
[in] ULONG cb,
[out] ULONG *pcb,
[out, size_is(cb), length_is(*pcb)] BYTE *pv);
// test passing dword parameters
SCODE DwordIn([in] handle_t hRpc, [in] DWORD dw);
SCODE DwordOut([in] handle_t hRpc, [out] DWORD *pdw);
SCODE DwordInOut([in] handle_t hRpc, [in,out] DWORD *pdw);
// test passing LARGE_INTEGER parameters
SCODE LiIn([in] handle_t hRpc, [in] LARGE_INTEGER li);
SCODE LiOut([in] handle_t hRpc, [out] LARGE_INTEGER *pli);
SCODE ULiIn([in] handle_t hRpc, [in] ULARGE_INTEGER uli);
SCODE ULiOut([in] handle_t hRpc, [out] ULARGE_INTEGER *puli);
// test passing string parameters
SCODE StringIn([in] handle_t hRpc, [in,string] LPWSTR pwsz);
SCODE StringOut([in] handle_t hRpc, [out,string] LPWSTR *ppwsz);
SCODE StringInOut([in] handle_t hRpc, [in,out,string] LPWSTR pwsz);
// test passing GUID parameters
SCODE GuidIn([in] handle_t hRpc, [in] GUID guid);
SCODE GuidOut([in] handle_t hRpc, [out] GUID *pguid);
}
//]