1 /** 2 * Windows API header module 3 * 4 * Translated from MinGW Windows headers 5 * 6 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 7 * Source: $(DRUNTIMESRC core/sys/windows/_unknwn.d) 8 */ 9 /// Automatically imported and edited from the druntime module 10 /// core.sys.windows.unknwn for the auto-generated win32 package. 11 module win32.unknwn; 12 //version (Windows): 13 @system: 14 15 import win32.objfwd, win32.windef, win32.wtypes; 16 import win32.basetyps; 17 18 extern (Windows) { 19 void* MIDL_user_allocate(size_t); 20 void MIDL_user_free(void*); 21 } 22 23 24 extern (Windows) { 25 26 interface IUnknown { 27 HRESULT QueryInterface(IID* riid, void** pvObject); 28 ULONG AddRef(); 29 ULONG Release(); 30 } 31 32 alias IUnknown LPUNKNOWN; 33 34 interface IClassFactory : IUnknown { 35 HRESULT CreateInstance(IUnknown UnkOuter, IID* riid, void** pvObject); 36 HRESULT LockServer(BOOL fLock); 37 } 38 alias IClassFactory LPCLASSFACTORY; 39 40 /+ 41 // These do not seem to be necessary (or desirable) for D. 42 HRESULT IUnknown_QueryInterface_Proxy(IUnknown,REFIID,void**); 43 ULONG IUnknown_AddRef_Proxy(IUnknown); 44 ULONG IUnknown_Release_Proxy(IUnknown); 45 HRESULT IClassFactory_RemoteCreateInstance_Proxy(IClassFactory,REFIID,IUnknown*); 46 HRESULT IClassFactory_RemoteLockServer_Proxy(IClassFactory,BOOL); 47 HRESULT IClassFactory_CreateInstance_Proxy(IClassFactory,IUnknown,REFIID,void**); 48 HRESULT IClassFactory_CreateInstance_Stub(IClassFactory,REFIID,IUnknown*); 49 HRESULT IClassFactory_LockServer_Proxy(IClassFactory,BOOL); 50 HRESULT IClassFactory_LockServer_Stub(IClassFactory,BOOL); 51 52 void IUnknown_QueryInterface_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); 53 void IUnknown_AddRef_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); 54 void IUnknown_Release_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); 55 void IClassFactory_RemoteCreateInstance_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); 56 void IClassFactory_RemoteLockServer_Stub(LPRPCSTUBBUFFER,LPRPCCHANNELBUFFER,PRPC_MESSAGE,PDWORD); 57 +/ 58 }