windows-nt/Source/XPSP1/NT/com/published/dload/oleaut32.c
2020-09-26 16:20:57 +08:00

516 lines
8.3 KiB
C

#include "compch.h"
#pragma hdrstop
#define _OLEAUT32_
#include <oleauto.h>
#include <olectl.h>
#undef WINOLEAUTAPI
#define WINOLEAUTAPI HRESULT STDAPICALLTYPE
#undef WINOLECTLAPI
#define WINOLECTLAPI HRESULT STDAPICALLTYPE
#undef WINOLEAUTAPI_
#define WINOLEAUTAPI_(type) type STDAPICALLTYPE
static
STDMETHODIMP_(BSTR)
SysAllocString(
const OLECHAR * string
)
{
return NULL;
}
static
STDMETHODIMP_(void)
SysFreeString(
BSTR bstrString
)
{
return;
}
static
STDMETHODIMP_(void)
VariantInit(
VARIANTARG * pvarg
)
{
pvarg->vt = VT_EMPTY;
return;
}
static
STDMETHODIMP
VariantClear(
VARIANTARG * pvarg
)
{
pvarg->vt = VT_EMPTY;
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP_(BSTR)
SysAllocStringByteLen(
LPCSTR psz,
UINT len
)
{
return NULL;
}
static
STDMETHODIMP_(UINT)
SafeArrayGetDim(
SAFEARRAY * psa
)
{
return 0;
}
static
STDMETHODIMP_(UINT)
SysStringByteLen(
BSTR bstr
)
{
return 0;
}
static
STDMETHODIMP_(SAFEARRAY *)
SafeArrayCreateVector(
VARTYPE vt,
LONG lLbound,
ULONG cElements
)
{
return NULL;
}
static
STDMETHODIMP_(SAFEARRAY *)
SafeArrayCreate(
VARTYPE vt,
UINT cDims,
SAFEARRAYBOUND * rgsabound
)
{
return NULL;
}
static
STDMETHODIMP
SafeArrayCopy(
SAFEARRAY * psa,
SAFEARRAY ** ppsaOut
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SafeArrayPutElement(
SAFEARRAY * psa,
LONG * rgIndices,
void * pv
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SafeArrayDestroy(
SAFEARRAY * psa
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SafeArrayAccessData(
SAFEARRAY * psa,
void HUGEP** ppvData
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SafeArrayUnaccessData(
SAFEARRAY * psa
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP_(INT)
VariantTimeToSystemTime(
DOUBLE vtime,
LPSYSTEMTIME lpSystemTime
)
{
return FALSE;
}
static
STDMETHODIMP
OleCreatePropertyFrame(
HWND hwndOwner,
UINT x,
UINT y,
LPCOLESTR lpszCaption,
ULONG cObjects,
LPUNKNOWN FAR* ppUnk,
ULONG cPages,
LPCLSID pPageClsID,
LCID lcid,
DWORD dwReserved,
LPVOID pvReserved)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP_(UINT)
SysStringLen(
BSTR bstr
)
{
return 0;
}
static
STDMETHODIMP
LoadRegTypeLib(
REFGUID rguid,
WORD wVerMajor,
WORD wVerMinor,
LCID lcid,
ITypeLib ** pptlib
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SetErrorInfo(
ULONG dwReserved,
IErrorInfo * perrinfo
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP_(INT)
SystemTimeToVariantTime(
LPSYSTEMTIME lpSystemTime,
DOUBLE *pvtime
)
{
return 0;
}
static
STDMETHODIMP
VariantCopy(
VARIANTARG * pvargDest,
VARIANTARG * pvargSrc
)
{
return E_OUTOFMEMORY;
}
static
STDMETHODIMP_(INT)
DosDateTimeToVariantTime(
USHORT wDosDate,
USHORT wDosTime,
DOUBLE * pvtime
)
{
return 0;
}
static
STDMETHODIMP_(INT)
VariantTimeToDosDateTime(
DOUBLE vtime,
USHORT * pwDosDate,
USHORT * pwDosTime
)
{
return 0;
}
static
STDMETHODIMP
SafeArrayGetUBound(
SAFEARRAY * psa,
UINT nDim,
LONG * plUbound
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
VarDiv(
LPVARIANT pvarLeft,
LPVARIANT pvarRight,
LPVARIANT pvarResult)
{
// I bet people don't check the return value
// so do a VariantClear just to be safe
ZeroMemory(pvarResult, sizeof(*pvarResult));
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
VarNeg(
LPVARIANT pvarIn,
LPVARIANT pvarResult)
{
// I bet people don't check the return value
// so do a VariantClear just to be safe
ZeroMemory(pvarResult, sizeof(*pvarResult));
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
VarRound(
LPVARIANT pvarIn,
int cDecimals,
LPVARIANT pvarResult)
{
// I bet people don't check the return value
// so do a VariantClear just to be safe
ZeroMemory(pvarResult, sizeof(*pvarResult));
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
VarCmp(
LPVARIANT pvarLeft,
LPVARIANT pvarRight,
LCID lcid,
ULONG dwFlags
)
{
return VARCMP_NULL;
}
static
STDMETHODIMP
VarMul(
LPVARIANT pvarLeft,
LPVARIANT pvarRight,
LPVARIANT pvarResult)
{
// I bet people don't check the return value
// so do a VariantClear just to be safe
ZeroMemory(pvarResult, sizeof(*pvarResult));
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
VarPow(
LPVARIANT pvarLeft,
LPVARIANT pvarRight,
LPVARIANT pvarResult)
{
// I bet people don't check the return value
// so do a VariantClear just to be safe
ZeroMemory(pvarResult, sizeof(*pvarResult));
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
RegisterTypeLib(
ITypeLib * ptlib,
OLECHAR *szFullPath,
OLECHAR *szHelpDir
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
LoadTypeLib(
const OLECHAR *szFile,
ITypeLib ** pptlib
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP_(BSTR)
SysAllocStringLen(
const OLECHAR * strIn,
UINT cch
)
{
return NULL;
}
static
STDMETHODIMP
VariantChangeType(
VARIANTARG * pvargDest,
VARIANTARG * pvarSrc,
USHORT wFlags,
VARTYPE vt
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
STDMETHODIMP
SafeArrayGetLBound(
SAFEARRAY * psa,
UINT nDim,
LONG * plLbound
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
WINOLEAUTAPI
DispInvoke(
void * _this,
ITypeInfo * ptinfo,
DISPID dispidMember,
WORD wFlags,
DISPPARAMS * pparams,
VARIANT * pvarResult,
EXCEPINFO * pexcepinfo,
UINT * puArgErr
)
{
return E_OUTOFMEMORY;
}
static
WINOLEAUTAPI
DispGetIDsOfNames(
ITypeInfo * ptinfo,
OLECHAR ** rgszNames,
UINT cNames,
DISPID * rgdispid
)
{
return E_OUTOFMEMORY;
}
static
WINOLEAUTAPI
SafeArrayGetElement(
SAFEARRAY* psa,
LONG* rgIndices,
void* pv
)
{
return E_OUTOFMEMORY;
}
static
WINOLECTLAPI
OleCreatePropertyFrameIndirect(
LPOCPFIPARAMS lpParams
)
{
return HRESULT_FROM_WIN32(ERROR_MOD_NOT_FOUND);
}
static
WINOLEAUTAPI
VariantCopyInd(
VARIANT* pvarDest,
VARIANTARG* pvargSrc
)
{
return E_OUTOFMEMORY;
}
static
WINOLEAUTAPI_(UINT)
SafeArrayGetElemsize(
SAFEARRAY * psa
)
{
return 0;
}
//
// !! WARNING !! The entries below must be in order by ORDINAL
//
DEFINE_ORDINAL_ENTRIES(oleaut32)
{
DLOENTRY( 2, SysAllocString)
DLOENTRY( 4, SysAllocStringLen)
DLOENTRY( 6, SysFreeString)
DLOENTRY( 7, SysStringLen)
DLOENTRY( 8, VariantInit)
DLOENTRY( 9, VariantClear)
DLOENTRY( 10, VariantCopy)
DLOENTRY( 11, VariantCopyInd)
DLOENTRY( 12, VariantChangeType)
DLOENTRY( 13, VariantTimeToDosDateTime)
DLOENTRY( 14, DosDateTimeToVariantTime)
DLOENTRY( 15, SafeArrayCreate)
DLOENTRY( 16, SafeArrayDestroy)
DLOENTRY( 17, SafeArrayGetDim)
DLOENTRY( 18, SafeArrayGetElemsize)
DLOENTRY( 19, SafeArrayGetUBound)
DLOENTRY( 20, SafeArrayGetLBound)
DLOENTRY( 23, SafeArrayAccessData)
DLOENTRY( 24, SafeArrayUnaccessData)
DLOENTRY( 25, SafeArrayGetElement)
DLOENTRY( 26, SafeArrayPutElement)
DLOENTRY( 27, SafeArrayCopy)
DLOENTRY( 29, DispGetIDsOfNames)
DLOENTRY( 30, DispInvoke)
DLOENTRY(143, VarDiv)
DLOENTRY(149, SysStringByteLen)
DLOENTRY(150, SysAllocStringByteLen)
DLOENTRY(156, VarMul)
DLOENTRY(158, VarPow)
DLOENTRY(161, LoadTypeLib)
DLOENTRY(162, LoadRegTypeLib)
DLOENTRY(163, RegisterTypeLib)
DLOENTRY(173, VarNeg)
DLOENTRY(175, VarRound)
DLOENTRY(176, VarCmp)
DLOENTRY(184, SystemTimeToVariantTime)
DLOENTRY(185, VariantTimeToSystemTime)
DLOENTRY(201, SetErrorInfo)
DLOENTRY(411, SafeArrayCreateVector)
DLOENTRY(416, OleCreatePropertyFrameIndirect)
DLOENTRY(417, OleCreatePropertyFrame)
};
DEFINE_ORDINAL_MAP(oleaut32);