summaryrefslogtreecommitdiffstats
path: root/public/sdk/inc/cobjps.h
diff options
context:
space:
mode:
authorAdam <you@example.com>2020-05-17 05:51:50 +0200
committerAdam <you@example.com>2020-05-17 05:51:50 +0200
commite611b132f9b8abe35b362e5870b74bce94a1e58e (patch)
treea5781d2ec0e085eeca33cf350cf878f2efea6fe5 /public/sdk/inc/cobjps.h
downloadNT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip
Diffstat (limited to 'public/sdk/inc/cobjps.h')
-rw-r--r--public/sdk/inc/cobjps.h69
1 files changed, 69 insertions, 0 deletions
diff --git a/public/sdk/inc/cobjps.h b/public/sdk/inc/cobjps.h
new file mode 100644
index 000000000..80faaff1d
--- /dev/null
+++ b/public/sdk/inc/cobjps.h
@@ -0,0 +1,69 @@
+/*****************************************************************************\
+* *
+* cobjps.h - Definitions for writing standard proxies and stubs *
+* *
+* OLE Version 2.0 *
+* *
+* Copyright (c) 1992-1995, Microsoft Corp. All rights reserved. *
+* *
+\*****************************************************************************/
+
+#if !defined( _COBJPS_H_ )
+#define _COBJPS_H_
+
+
+/****** IRpcChannel Interface ***********************************************/
+
+interface IRpcChannel : IUnknown
+{
+ STDMETHOD(GetStream)(REFIID iid, int iMethod, BOOL fSend,
+ BOOL fNoWait, DWORD size, IStream FAR* FAR* ppIStream) = 0;
+ STDMETHOD(Call)(IStream FAR* pIStream) = 0;
+ STDMETHOD(GetDestCtx)(DWORD FAR* lpdwDestCtx, LPVOID FAR* lplpvDestCtx) = 0;
+ STDMETHOD(IsConnected)(void) = 0;
+};
+
+
+/****** IRpcProxy Interface *************************************************/
+
+// IRpcProxy is an interface implemented by proxy objects. A proxy object has
+// exactly the same interfaces as the real object in addition to IRpcProxy.
+//
+
+interface IRpcProxy : IUnknown
+{
+ STDMETHOD(Connect)(IRpcChannel FAR* pRpcChannel) = 0;
+ STDMETHOD_(void, Disconnect)(void) = 0;
+};
+
+
+/****** IRpcStub Interface **************************************************/
+
+// IRpcStub is an interface implemented by stub objects.
+//
+
+interface IRpcStub : IUnknown
+{
+ STDMETHOD(Connect)(IUnknown FAR* pUnk) = 0;
+ STDMETHOD_(void, Disconnect)(void) = 0;
+ STDMETHOD(Invoke)(REFIID iid, int iMethod, IStream FAR* pIStream,
+ DWORD dwDestCtx, LPVOID lpvDestCtx) = 0;
+ STDMETHOD_(BOOL, IsIIDSupported)(REFIID iid) = 0;
+ STDMETHOD_(ULONG, CountRefs)(void) = 0;
+};
+
+
+/****** IPSFactory Interface ************************************************/
+
+// IPSFactory - creates proxies and stubs
+//
+
+interface IPSFactory : IUnknown
+{
+ STDMETHOD(CreateProxy)(IUnknown FAR* pUnkOuter, REFIID riid,
+ IRpcProxy FAR* FAR* ppProxy, void FAR* FAR* ppv) = 0;
+ STDMETHOD(CreateStub)(REFIID riid, IUnknown FAR* pUnkServer,
+ IRpcStub FAR* FAR* ppStub) = 0;
+};
+
+#endif // _COBJPS_H_