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.
|
|
//[ IRpcTest_itf //+------------------------------------------------------------------- // // Interface: IRpcTest (ib) // // Purpose: Interface for testing Rpc calls via Ole style interfaces // // History: 23-Nov-92 Rickhi Created // // Notes: // //--------------------------------------------------------------------
[ object, uuid(00000137-0001-0008-C000-000000000046), pointer_default(unique) ]
interface IRpcTest : IUnknown { import "unknwn.idl";
// test passing void parameters SCODE Void(void); SCODE VoidRC(void);
// test passing void ptr parameters ie byte arrays SCODE VoidPtrIn([in] ULONG cb, [in, size_is(cb)] BYTE *pv); SCODE VoidPtrOut([in] ULONG cb, [out] ULONG *pcb, [out, size_is(cb), length_is(*pcb)] BYTE *pv);
// test passing dword parameters SCODE DwordIn([in] DWORD dw); SCODE DwordOut([out] DWORD *pdw); SCODE DwordInOut([in,out] DWORD *pdw);
// test passing LARGE_INTEGER parameters SCODE LiIn([in] LARGE_INTEGER li); SCODE LiOut([out] LARGE_INTEGER *pli); SCODE ULiIn([in] ULARGE_INTEGER uli); SCODE ULiOut([out] ULARGE_INTEGER *puli);
// test passing string parameters SCODE StringIn([in,string] LPWSTR pwsz); SCODE StringOut([out,string] LPWSTR *ppwsz); SCODE StringInOut([in,out,string] LPWSTR pwsz);
// test passing GUID parameters SCODE GuidIn([in] GUID guid); SCODE GuidOut([out] GUID *pguid);
// test passing interface parameters SCODE IUnknownIn([in] IUnknown *punk); SCODE IUnknownOut([out] IUnknown **ppunk);
// these versions retain the interface ptr SCODE IUnknownInKeep([in] IUnknown *punk); SCODE IUnknownInRelease(void);
SCODE IUnknownOutKeep([out] IUnknown **ppunk);
// these versions test asking for a non-IUnknown interface SCODE InterfaceIn([in] REFIID riid, [in, iid_is(riid)] IUnknown *punk); SCODE InterfaceOut([in] REFIID riid, [out,iid_is(riid)] IUnknown **ppunk); }
//]
|