Sync to Wine-0_9:
Pierre d'Herbemont <pidherbemont(a)opendarwin.org>
- Allow compilation on non-i386.
Huw Davies <huw(a)codeweavers.com>
- When a dispinterface isn't dual, we should return
TYPE_E_ELEMENTNOTFOUND when trying to get index -1.
- Proxies and stubs for GetTypeInfoCont, GetLibAttr and ReleaseLibAttr.
- Implement GetContainingTypelib_{Proxy,Stub}.
Modified: trunk/reactos/lib/oleaut32/tmarshal.c
Deleted: trunk/reactos/lib/oleaut32/tmarshal.h
Modified: trunk/reactos/lib/oleaut32/typelib.c
Modified: trunk/reactos/lib/oleaut32/usrmarshal.c
Modified: trunk/reactos/w32api/include/oaidl.h
_____
Modified: trunk/reactos/lib/oleaut32/tmarshal.c
--- trunk/reactos/lib/oleaut32/tmarshal.c 2005-11-02 18:36:04 UTC
(rev 18953)
+++ trunk/reactos/lib/oleaut32/tmarshal.c 2005-11-02 19:28:16 UTC
(rev 18954)
@@ -344,7 +344,9 @@
#include "poppack.h"
#else /* __i386__ */
-# error You need to implement stubless proxies for your architecture
+# warning You need to implement stubless proxies for your architecture
+typedef struct _TMAsmProxy {
+} TMAsmProxy;
#endif
typedef struct _TMProxyImpl {
@@ -1939,6 +1941,7 @@
for (j=0;j<fdesc->cParams;j++)
nrofargs +=
_argsize(fdesc->lprgelemdescParam[j].tdesc.vt);
+#ifdef __i386__
if (fdesc->callconv != CC_STDCALL) {
ERR("calling convention is not stdcall????\n");
return E_FAIL;
@@ -1963,6 +1966,10 @@
xasm->bytestopop= (nrofargs+2)*4; /* pop args, This,
iMethod */
proxy->lpvtbl[i] = xasm;
break;
+#else
+ FIXME("not implemented on non i386\n");
+ return E_FAIL;
+#endif
}
}
}
_____
Deleted: trunk/reactos/lib/oleaut32/tmarshal.h
--- trunk/reactos/lib/oleaut32/tmarshal.h 2005-11-02 18:36:04 UTC
(rev 18953)
+++ trunk/reactos/lib/oleaut32/tmarshal.h 2005-11-02 19:28:16 UTC
(rev 18954)
@@ -1,24 +0,0 @@
-/*
- * Copyright 2002 Marcus Meissner
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
- */
-
-#ifndef TMARSHAL_H
-#define TMARSHAL_H
-HRESULT WINAPI
-TypeLibFac_DllGetClassObject(REFCLSID rclsid, REFIID iid,LPVOID *ppv);
-
-#endif
_____
Modified: trunk/reactos/lib/oleaut32/typelib.c
--- trunk/reactos/lib/oleaut32/typelib.c 2005-11-02 18:36:04 UTC
(rev 18953)
+++ trunk/reactos/lib/oleaut32/typelib.c 2005-11-02 19:28:16 UTC
(rev 18954)
@@ -4338,7 +4338,8 @@
HREFTYPE *pRefType)
{
ITypeInfoImpl *This = (ITypeInfoImpl *)iface;
- int(i);
+ int i;
+ HRESULT hr = S_OK;
TLBImplType *pImpl = This->impltypelist;
TRACE("(%p) index %d\n", This, index);
@@ -4358,8 +4359,7 @@
}
else
{
- if (!pImpl) return TYPE_E_ELEMENTNOTFOUND;
- *pRefType = pImpl->hRef;
+ hr = TYPE_E_ELEMENTNOTFOUND;
}
}
else
@@ -4370,15 +4370,21 @@
pImpl = pImpl->next;
}
- if (!pImpl) return TYPE_E_ELEMENTNOTFOUND;
+ if (pImpl)
+ *pRefType = pImpl->hRef;
+ else
+ hr = TYPE_E_ELEMENTNOTFOUND;
+ }
- *pRefType = pImpl->hRef;
-
- TRACE("-- 0x%08lx\n", pImpl->hRef );
+ if(TRACE_ON(ole))
+ {
+ if(SUCCEEDED(hr))
+ TRACE("SUCCESS -- hRef = 0x%08lx\n", *pRefType );
+ else
+ TRACE("FAILURE -- hresult = 0x%08lx\n", hr);
}
- return S_OK;
-
+ return hr;
}
/* ITypeInfo::GetImplTypeFlags
_____
Modified: trunk/reactos/lib/oleaut32/usrmarshal.c
--- trunk/reactos/lib/oleaut32/usrmarshal.c 2005-11-02 18:36:04 UTC
(rev 18953)
+++ trunk/reactos/lib/oleaut32/usrmarshal.c 2005-11-02 19:28:16 UTC
(rev 18954)
@@ -967,8 +967,24 @@
ITypeLib** ppTLib,
UINT* pIndex)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ ITypeLib *pTL;
+ UINT index;
+ HRESULT hr;
+
+ TRACE("(%p, %p, %p)\n", This, ppTLib, pIndex );
+
+ hr = ITypeInfo_RemoteGetContainingTypeLib_Proxy(This, &pTL,
&index);
+ if(SUCCEEDED(hr))
+ {
+ if(pIndex)
+ *pIndex = index;
+
+ if(ppTLib)
+ *ppTLib = pTL;
+ else
+ ITypeLib_Release(pTL);
+ }
+ return hr;
}
HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub(
@@ -976,8 +992,8 @@
ITypeLib** ppTLib,
UINT* pIndex)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ TRACE("(%p, %p, %p)\n", This, ppTLib, pIndex );
+ return ITypeInfo_GetContainingTypeLib(This, ppTLib, pIndex);
}
void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy(
@@ -1055,24 +1071,30 @@
UINT CALLBACK ITypeLib_GetTypeInfoCount_Proxy(
ITypeLib* This)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ UINT count = 0;
+ TRACE("(%p)\n", This);
+
+ ITypeLib_RemoteGetTypeInfoCount_Proxy(This, &count);
+
+ return count;
}
HRESULT __RPC_STUB ITypeLib_GetTypeInfoCount_Stub(
ITypeLib* This,
UINT* pcTInfo)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ TRACE("(%p, %p)\n", This, pcTInfo);
+ *pcTInfo = ITypeLib_GetTypeInfoCount(This);
+ return S_OK;
}
HRESULT CALLBACK ITypeLib_GetLibAttr_Proxy(
ITypeLib* This,
TLIBATTR** ppTLibAttr)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ CLEANLOCALSTORAGE stg;
+ TRACE("(%p, %p)\n", This, ppTLibAttr);
+ return ITypeLib_RemoteGetLibAttr_Proxy(This, ppTLibAttr, &stg);
}
HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub(
@@ -1080,8 +1102,8 @@
LPTLIBATTR* ppTLibAttr,
CLEANLOCALSTORAGE* pDummy)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ TRACE("(%p, %p)\n", This, ppTLibAttr);
+ return ITypeLib_GetLibAttr(This, ppTLibAttr);
}
HRESULT CALLBACK ITypeLib_GetDocumentation_Proxy(
@@ -1159,14 +1181,15 @@
ITypeLib* This,
TLIBATTR* pTLibAttr)
{
- FIXME("not implemented\n");
+ TRACE("(%p, %p)\n", This, pTLibAttr);
+ CoTaskMemFree(pTLibAttr);
}
HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub(
ITypeLib* This)
{
- FIXME("not implemented\n");
- return E_FAIL;
+ TRACE("nothing to do\n");
+ return S_OK;
}
_____
Modified: trunk/reactos/w32api/include/oaidl.h
--- trunk/reactos/w32api/include/oaidl.h 2005-11-02 18:36:04 UTC
(rev 18953)
+++ trunk/reactos/w32api/include/oaidl.h 2005-11-02 19:28:16 UTC
(rev 18954)
@@ -91,6 +91,11 @@
extern const IID IID_IRecordInfo;
extern const IID IID_ITypeMarshal;
+#ifndef __ITypeLib_FWD_DEFINED__
+#define __ITypeLib_FWD_DEFINED__
+typedef struct ITypeLib ITypeLib;
+#endif
+
typedef enum tagSYSKIND {
SYS_WIN16,SYS_WIN32,SYS_MAC
} SYSKIND;
@@ -586,6 +591,301 @@
#define ITypeInfo_ReleaseVarDesc(p,a) (p)->lpVtbl->ReleaseVarDesc(p,a)
#endif
+HRESULT CALLBACK ITypeInfo_RemoteGetTypeAttr_Proxy(
+ ITypeInfo* This,
+ LPTYPEATTR* ppTypeAttr,
+ CLEANLOCALSTORAGE* pDummy);
+void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetTypeAttr_Proxy(
+ ITypeInfo* This,
+ TYPEATTR** ppTypeAttr);
+HRESULT __RPC_STUB ITypeInfo_GetTypeAttr_Stub(
+ ITypeInfo* This,
+ LPTYPEATTR* ppTypeAttr,
+ CLEANLOCALSTORAGE* pDummy);
+HRESULT CALLBACK ITypeInfo_GetTypeComp_Proxy(
+ ITypeInfo* This,
+ ITypeComp** ppTComp);
+void __RPC_STUB ITypeInfo_GetTypeComp_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_RemoteGetFuncDesc_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ LPFUNCDESC* ppFuncDesc,
+ CLEANLOCALSTORAGE* pDummy);
+void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetFuncDesc_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ FUNCDESC** ppFuncDesc);
+HRESULT __RPC_STUB ITypeInfo_GetFuncDesc_Stub(
+ ITypeInfo* This,
+ UINT index,
+ LPFUNCDESC* ppFuncDesc,
+ CLEANLOCALSTORAGE* pDummy);
+HRESULT CALLBACK ITypeInfo_RemoteGetVarDesc_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ LPVARDESC* ppVarDesc,
+ CLEANLOCALSTORAGE* pDummy);
+void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetVarDesc_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ VARDESC** ppVarDesc);
+HRESULT __RPC_STUB ITypeInfo_GetVarDesc_Stub(
+ ITypeInfo* This,
+ UINT index,
+ LPVARDESC* ppVarDesc,
+ CLEANLOCALSTORAGE* pDummy);
+HRESULT CALLBACK ITypeInfo_RemoteGetNames_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ BSTR* rgBstrNames,
+ UINT cMaxNames,
+ UINT* pcNames);
+void __RPC_STUB ITypeInfo_RemoteGetNames_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetNames_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ BSTR* rgBstrNames,
+ UINT cMaxNames,
+ UINT* pcNames);
+HRESULT __RPC_STUB ITypeInfo_GetNames_Stub(
+ ITypeInfo* This,
+ MEMBERID memid,
+ BSTR* rgBstrNames,
+ UINT cMaxNames,
+ UINT* pcNames);
+HRESULT CALLBACK ITypeInfo_GetRefTypeOfImplType_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ HREFTYPE* pRefType);
+void __RPC_STUB ITypeInfo_GetRefTypeOfImplType_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetImplTypeFlags_Proxy(
+ ITypeInfo* This,
+ UINT index,
+ INT* pImplTypeFlags);
+void __RPC_STUB ITypeInfo_GetImplTypeFlags_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_LocalGetIDsOfNames_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetIDsOfNames_Proxy(
+ ITypeInfo* This,
+ LPOLESTR* rgszNames,
+ UINT cNames,
+ MEMBERID* pMemId);
+HRESULT __RPC_STUB ITypeInfo_GetIDsOfNames_Stub(
+ ITypeInfo* This);
+HRESULT CALLBACK ITypeInfo_LocalInvoke_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalInvoke_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_Invoke_Proxy(
+ ITypeInfo* This,
+ PVOID pvInstance,
+ MEMBERID memid,
+ WORD wFlags,
+ DISPPARAMS* pDispParams,
+ VARIANT* pVarResult,
+ EXCEPINFO* pExcepInfo,
+ UINT* puArgErr);
+HRESULT __RPC_STUB ITypeInfo_Invoke_Stub(
+ ITypeInfo* This);
+HRESULT CALLBACK ITypeInfo_RemoteGetDocumentation_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ DWORD refPtrFlags,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetDocumentation_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+HRESULT __RPC_STUB ITypeInfo_GetDocumentation_Stub(
+ ITypeInfo* This,
+ MEMBERID memid,
+ DWORD refPtrFlags,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+HRESULT CALLBACK ITypeInfo_RemoteGetDllEntry_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ INVOKEKIND invKind,
+ DWORD refPtrFlags,
+ BSTR* pBstrDllName,
+ BSTR* pBstrName,
+ WORD* pwOrdinal);
+void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetDllEntry_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ INVOKEKIND invKind,
+ BSTR* pBstrDllName,
+ BSTR* pBstrName,
+ WORD* pwOrdinal);
+HRESULT __RPC_STUB ITypeInfo_GetDllEntry_Stub(
+ ITypeInfo* This,
+ MEMBERID memid,
+ INVOKEKIND invKind,
+ DWORD refPtrFlags,
+ BSTR* pBstrDllName,
+ BSTR* pBstrName,
+ WORD* pwOrdinal);
+HRESULT CALLBACK ITypeInfo_GetRefTypeInfo_Proxy(
+ ITypeInfo* This,
+ HREFTYPE hRefType,
+ ITypeInfo** ppTInfo);
+void __RPC_STUB ITypeInfo_GetRefTypeInfo_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_LocalAddressOfMember_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_AddressOfMember_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ INVOKEKIND invKind,
+ PVOID* ppv);
+HRESULT __RPC_STUB ITypeInfo_AddressOfMember_Stub(
+ ITypeInfo* This);
+HRESULT CALLBACK ITypeInfo_RemoteCreateInstance_Proxy(
+ ITypeInfo* This,
+ REFIID riid,
+ IUnknown** ppvObj);
+void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_CreateInstance_Proxy(
+ ITypeInfo* This,
+ IUnknown* pUnkOuter,
+ REFIID riid,
+ PVOID* ppvObj);
+HRESULT __RPC_STUB ITypeInfo_CreateInstance_Stub(
+ ITypeInfo* This,
+ REFIID riid,
+ IUnknown** ppvObj);
+HRESULT CALLBACK ITypeInfo_GetMops_Proxy(
+ ITypeInfo* This,
+ MEMBERID memid,
+ BSTR* pBstrMops);
+void __RPC_STUB ITypeInfo_GetMops_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_RemoteGetContainingTypeLib_Proxy(
+ ITypeInfo* This,
+ ITypeLib** ppTLib,
+ UINT* pIndex);
+void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeInfo_GetContainingTypeLib_Proxy(
+ ITypeInfo* This,
+ ITypeLib** ppTLib,
+ UINT* pIndex);
+HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub(
+ ITypeInfo* This,
+ ITypeLib** ppTLib,
+ UINT* pIndex);
+HRESULT CALLBACK ITypeInfo_LocalReleaseTypeAttr_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy(
+ ITypeInfo* This,
+ TYPEATTR* pTypeAttr);
+HRESULT __RPC_STUB ITypeInfo_ReleaseTypeAttr_Stub(
+ ITypeInfo* This);
+HRESULT CALLBACK ITypeInfo_LocalReleaseFuncDesc_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+void CALLBACK ITypeInfo_ReleaseFuncDesc_Proxy(
+ ITypeInfo* This,
+ FUNCDESC* pFuncDesc);
+HRESULT __RPC_STUB ITypeInfo_ReleaseFuncDesc_Stub(
+ ITypeInfo* This);
+HRESULT CALLBACK ITypeInfo_LocalReleaseVarDesc_Proxy(
+ ITypeInfo* This);
+void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+void CALLBACK ITypeInfo_ReleaseVarDesc_Proxy(
+ ITypeInfo* This,
+ VARDESC* pVarDesc);
+HRESULT __RPC_STUB ITypeInfo_ReleaseVarDesc_Stub(
+ ITypeInfo* This);
+
#define INTERFACE ITypeInfo2
DECLARE_INTERFACE_(ITypeInfo2,ITypeInfo)
{
@@ -704,6 +1004,161 @@
#define ITypeLib_ReleaseTLibAttr(p,a) (p)->lpVtbl->ReleaseTLibAttr(p,a)
#endif
+HRESULT CALLBACK ITypeLib_RemoteGetTypeInfoCount_Proxy(
+ ITypeLib* This,
+ UINT* pcTInfo);
+void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+UINT CALLBACK ITypeLib_GetTypeInfoCount_Proxy(
+ ITypeLib* This);
+HRESULT __RPC_STUB ITypeLib_GetTypeInfoCount_Stub(
+ ITypeLib* This,
+ UINT* pcTInfo);
+HRESULT CALLBACK ITypeLib_GetTypeInfo_Proxy(
+ ITypeLib* This,
+ UINT index,
+ ITypeInfo** ppTInfo);
+void __RPC_STUB ITypeLib_GetTypeInfo_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_GetTypeInfoType_Proxy(
+ ITypeLib* This,
+ UINT index,
+ TYPEKIND* pTKind);
+void __RPC_STUB ITypeLib_GetTypeInfoType_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_GetTypeInfoOfGuid_Proxy(
+ ITypeLib* This,
+ REFGUID guid,
+ ITypeInfo** ppTinfo);
+void __RPC_STUB ITypeLib_GetTypeInfoOfGuid_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_RemoteGetLibAttr_Proxy(
+ ITypeLib* This,
+ LPTLIBATTR* ppTLibAttr,
+ CLEANLOCALSTORAGE* pDummy);
+void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_GetLibAttr_Proxy(
+ ITypeLib* This,
+ TLIBATTR** ppTLibAttr);
+HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub(
+ ITypeLib* This,
+ LPTLIBATTR* ppTLibAttr,
+ CLEANLOCALSTORAGE* pDummy);
+HRESULT CALLBACK ITypeLib_GetTypeComp_Proxy(
+ ITypeLib* This,
+ ITypeComp** ppTComp);
+void __RPC_STUB ITypeLib_GetTypeComp_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_RemoteGetDocumentation_Proxy(
+ ITypeLib* This,
+ INT index,
+ DWORD refPtrFlags,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_GetDocumentation_Proxy(
+ ITypeLib* This,
+ INT index,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+HRESULT __RPC_STUB ITypeLib_GetDocumentation_Stub(
+ ITypeLib* This,
+ INT index,
+ DWORD refPtrFlags,
+ BSTR* pBstrName,
+ BSTR* pBstrDocString,
+ DWORD* pdwHelpContext,
+ BSTR* pBstrHelpFile);
+HRESULT CALLBACK ITypeLib_RemoteIsName_Proxy(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ BOOL* pfName,
+ BSTR* pBstrLibName);
+void __RPC_STUB ITypeLib_RemoteIsName_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_IsName_Proxy(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ BOOL* pfName);
+HRESULT __RPC_STUB ITypeLib_IsName_Stub(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ BOOL* pfName,
+ BSTR* pBstrLibName);
+HRESULT CALLBACK ITypeLib_RemoteFindName_Proxy(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ ITypeInfo** ppTInfo,
+ MEMBERID* rgMemId,
+ USHORT* pcFound,
+ BSTR* pBstrLibName);
+void __RPC_STUB ITypeLib_RemoteFindName_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+HRESULT CALLBACK ITypeLib_FindName_Proxy(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ ITypeInfo** ppTInfo,
+ MEMBERID* rgMemId,
+ USHORT* pcFound);
+HRESULT __RPC_STUB ITypeLib_FindName_Stub(
+ ITypeLib* This,
+ LPOLESTR szNameBuf,
+ ULONG lHashVal,
+ ITypeInfo** ppTInfo,
+ MEMBERID* rgMemId,
+ USHORT* pcFound,
+ BSTR* pBstrLibName);
+HRESULT CALLBACK ITypeLib_LocalReleaseTLibAttr_Proxy(
+ ITypeLib* This);
+void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub(
+ struct IRpcStubBuffer* This,
+ struct IRpcChannelBuffer* pRpcChannelBuffer,
+ PRPC_MESSAGE pRpcMessage,
+ DWORD* pdwStubPhase);
+void CALLBACK ITypeLib_ReleaseTLibAttr_Proxy(
+ ITypeLib* This,
+ TLIBATTR* pTLibAttr);
+HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub(
+ ITypeLib* This);
+
#define INTERFACE ITypeLib2
DECLARE_INTERFACE_(ITypeLib2,ITypeLib)
{