ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

typelib2.c File Reference
#include "config.h"
#include "wine/port.h"
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <stdio.h>
#include <ctype.h>
#include "winerror.h"
#include "windef.h"
#include "winbase.h"
#include "winnls.h"
#include "winreg.h"
#include "winuser.h"
#include "wine/unicode.h"
#include "objbase.h"
#include "typelib.h"
#include "wine/debug.h"

Go to the source code of this file.

Data Structures

struct  CyclicList
struct  MSFT_ImpFile
struct  ICreateTypeLib2Impl
struct  ICreateTypeInfo2Impl

Defines

#define COBJMACROS
#define NONAMELESSUNION
#define NONAMELESSSTRUCT

Enumerations

enum  tagCyclicListElementType { CyclicListFunc, CyclicListVar }
enum  MSFT_segment_index {
  MSFT_SEG_TYPEINFO = 0, MSFT_SEG_IMPORTINFO, MSFT_SEG_IMPORTFILES, MSFT_SEG_REFERENCES,
  MSFT_SEG_GUIDHASH, MSFT_SEG_GUID, MSFT_SEG_NAMEHASH, MSFT_SEG_NAME,
  MSFT_SEG_STRING, MSFT_SEG_TYPEDESC, MSFT_SEG_ARRAYDESC, MSFT_SEG_CUSTDATA,
  MSFT_SEG_CUSTDATAGUID, MSFT_SEG_UNKNOWN, MSFT_SEG_UNKNOWN2, MSFT_SEG_MAX,
  MSFT_SEG_TYPEINFO = 0, MSFT_SEG_IMPORTINFO, MSFT_SEG_IMPORTFILES, MSFT_SEG_REFERENCES,
  MSFT_SEG_GUIDHASH, MSFT_SEG_GUID, MSFT_SEG_NAMEHASH, MSFT_SEG_NAME,
  MSFT_SEG_STRING, MSFT_SEG_TYPEDESC, MSFT_SEG_ARRAYDESC, MSFT_SEG_CUSTDATA,
  MSFT_SEG_CUSTDATAGUID, MSFT_SEG_UNKNOWN, MSFT_SEG_UNKNOWN2, MSFT_SEG_MAX
}

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (typelib2)
static ICreateTypeLib2Implimpl_from_ITypeLib2 (ITypeLib2 *iface)
static ICreateTypeInfo2Implimpl_from_ITypeInfo2 (ITypeInfo2 *iface)
static ULONG WINAPI ICreateTypeLib2_fnRelease (ICreateTypeLib2 *iface)
static void ctl2_init_header (ICreateTypeLib2Impl *This)
static void ctl2_init_segdir (ICreateTypeLib2Impl *This)
static int ctl2_hash_guid (REFGUID guid)
static int ctl2_find_guid (ICreateTypeLib2Impl *This, int hash_key, REFGUID guid)
static int ctl2_find_name (ICreateTypeLib2Impl *This, const char *name)
static int ctl2_encode_name (ICreateTypeLib2Impl *This, const WCHAR *name, char **result)
static void ctl2_decode_name (char *data, WCHAR **string)
static int ctl2_encode_string (ICreateTypeLib2Impl *This, const WCHAR *string, char **result)
static void ctl2_decode_string (char *data, WCHAR **string)
static int ctl2_alloc_segment (ICreateTypeLib2Impl *This, enum MSFT_segment_index segment, int size, int block_size)
static int ctl2_alloc_typeinfo (ICreateTypeLib2Impl *This, int nameoffset)
static int ctl2_alloc_guid (ICreateTypeLib2Impl *This, MSFT_GuidEntry *guid)
static int ctl2_alloc_name (ICreateTypeLib2Impl *This, const WCHAR *name)
static int ctl2_alloc_string (ICreateTypeLib2Impl *This, const WCHAR *string)
static int ctl2_alloc_importinfo (ICreateTypeLib2Impl *This, MSFT_ImpInfo *impinfo)
static int ctl2_alloc_importfile (ICreateTypeLib2Impl *This, int guidoffset, LCID lcid, int major_version, int minor_version, const WCHAR *filename)
static HRESULT ctl2_encode_variant (ICreateTypeLib2Impl *This, int *encoded_value, VARIANT *value, VARTYPE arg_type)
static HRESULT ctl2_set_custdata (ICreateTypeLib2Impl *This, REFGUID guid, VARIANT *pVarVal, int *offset)
static int ctl2_encode_typedesc (ICreateTypeLib2Impl *This, const TYPEDESC *tdesc, int *encoded_tdesc, int *width, int *alignment, int *decoded_size)
static int ctl2_find_nth_reference (ICreateTypeLib2Impl *This, int offset, int index)
static HRESULT ctl2_find_typeinfo_from_offset (ICreateTypeLib2Impl *This, int offset, ITypeInfo **ppTinfo)
static INT funcrecord_reallochdr (INT **typedata, int need)
static HRESULT WINAPI ICreateTypeInfo2_fnQueryInterface (ICreateTypeInfo2 *iface, REFIID riid, VOID **ppvObject)
static ULONG WINAPI ICreateTypeInfo2_fnAddRef (ICreateTypeInfo2 *iface)
static ULONG WINAPI ICreateTypeInfo2_fnRelease (ICreateTypeInfo2 *iface)
static HRESULT WINAPI ICreateTypeInfo2_fnSetGuid (ICreateTypeInfo2 *iface, REFGUID guid)
static HRESULT WINAPI ICreateTypeInfo2_fnSetTypeFlags (ICreateTypeInfo2 *iface, UINT uTypeFlags)
static HRESULT WINAPI ICreateTypeInfo2_fnSetDocString (ICreateTypeInfo2 *iface, LPOLESTR pStrDoc)
static HRESULT WINAPI ICreateTypeInfo2_fnSetHelpContext (ICreateTypeInfo2 *iface, DWORD dwHelpContext)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVersion (ICreateTypeInfo2 *iface, WORD wMajorVerNum, WORD wMinorVerNum)
static HRESULT WINAPI ICreateTypeInfo2_fnAddRefTypeInfo (ICreateTypeInfo2 *iface, ITypeInfo *pTInfo, HREFTYPE *phRefType)
static HRESULT WINAPI ICreateTypeInfo2_fnAddFuncDesc (ICreateTypeInfo2 *iface, UINT index, FUNCDESC *pFuncDesc)
static HRESULT WINAPI ICreateTypeInfo2_fnAddImplType (ICreateTypeInfo2 *iface, UINT index, HREFTYPE hRefType)
static HRESULT WINAPI ICreateTypeInfo2_fnSetImplTypeFlags (ICreateTypeInfo2 *iface, UINT index, INT implTypeFlags)
static HRESULT WINAPI ICreateTypeInfo2_fnSetAlignment (ICreateTypeInfo2 *iface, WORD cbAlignment)
static HRESULT WINAPI ICreateTypeInfo2_fnSetSchema (ICreateTypeInfo2 *iface, LPOLESTR pStrSchema)
static HRESULT WINAPI ICreateTypeInfo2_fnAddVarDesc (ICreateTypeInfo2 *iface, UINT index, VARDESC *pVarDesc)
static HRESULT WINAPI ICreateTypeInfo2_fnSetFuncAndParamNames (ICreateTypeInfo2 *iface, UINT index, LPOLESTR *rgszNames, UINT cNames)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVarName (ICreateTypeInfo2 *iface, UINT index, LPOLESTR szName)
static HRESULT WINAPI ICreateTypeInfo2_fnSetTypeDescAlias (ICreateTypeInfo2 *iface, TYPEDESC *pTDescAlias)
static HRESULT WINAPI ICreateTypeInfo2_fnDefineFuncAsDllEntry (ICreateTypeInfo2 *iface, UINT index, LPOLESTR szDllName, LPOLESTR szProcName)
static HRESULT WINAPI ICreateTypeInfo2_fnSetFuncDocString (ICreateTypeInfo2 *iface, UINT index, LPOLESTR szDocString)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVarDocString (ICreateTypeInfo2 *iface, UINT index, LPOLESTR szDocString)
static HRESULT WINAPI ICreateTypeInfo2_fnSetFuncHelpContext (ICreateTypeInfo2 *iface, UINT index, DWORD dwHelpContext)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVarHelpContext (ICreateTypeInfo2 *iface, UINT index, DWORD dwHelpContext)
static HRESULT WINAPI ICreateTypeInfo2_fnSetMops (ICreateTypeInfo2 *iface, UINT index, BSTR bstrMops)
static HRESULT WINAPI ICreateTypeInfo2_fnSetTypeIdldesc (ICreateTypeInfo2 *iface, IDLDESC *pIdlDesc)
static HRESULT WINAPI ICreateTypeInfo2_fnLayOut (ICreateTypeInfo2 *iface)
static HRESULT WINAPI ICreateTypeInfo2_fnDeleteFuncDesc (ICreateTypeInfo2 *iface, UINT index)
static HRESULT WINAPI ICreateTypeInfo2_fnDeleteFuncDescByMemId (ICreateTypeInfo2 *iface, MEMBERID memid, INVOKEKIND invKind)
static HRESULT WINAPI ICreateTypeInfo2_fnDeleteVarDesc (ICreateTypeInfo2 *iface, UINT index)
static HRESULT WINAPI ICreateTypeInfo2_fnDeleteVarDescByMemId (ICreateTypeInfo2 *iface, MEMBERID memid)
static HRESULT WINAPI ICreateTypeInfo2_fnDeleteImplType (ICreateTypeInfo2 *iface, UINT index)
static HRESULT WINAPI ICreateTypeInfo2_fnSetCustData (ICreateTypeInfo2 *iface, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeInfo2_fnSetFuncCustData (ICreateTypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeInfo2_fnSetParamCustData (ICreateTypeInfo2 *iface, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVarCustData (ICreateTypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeInfo2_fnSetImplTypeCustData (ICreateTypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeInfo2_fnSetHelpStringContext (ICreateTypeInfo2 *iface, ULONG dwHelpStringContext)
static HRESULT WINAPI ICreateTypeInfo2_fnSetFuncHelpStringContext (ICreateTypeInfo2 *iface, UINT index, ULONG dwHelpStringContext)
static HRESULT WINAPI ICreateTypeInfo2_fnSetVarHelpStringContext (ICreateTypeInfo2 *iface, UINT index, ULONG dwHelpStringContext)
static HRESULT WINAPI ICreateTypeInfo2_fnInvalidate (ICreateTypeInfo2 *iface)
static HRESULT WINAPI ICreateTypeInfo2_fnSetName (ICreateTypeInfo2 *iface, LPOLESTR szName)
static HRESULT WINAPI ITypeInfo2_fnQueryInterface (ITypeInfo2 *iface, REFIID riid, LPVOID *ppv)
static ULONG WINAPI ITypeInfo2_fnAddRef (ITypeInfo2 *iface)
static ULONG WINAPI ITypeInfo2_fnRelease (ITypeInfo2 *iface)
static HRESULT WINAPI ITypeInfo2_fnGetTypeAttr (ITypeInfo2 *iface, TYPEATTR **ppTypeAttr)
static HRESULT WINAPI ITypeInfo2_fnGetTypeComp (ITypeInfo2 *iface, ITypeComp **ppTComp)
static HRESULT WINAPI ITypeInfo2_fnGetFuncDesc (ITypeInfo2 *iface, UINT index, FUNCDESC **ppFuncDesc)
static HRESULT WINAPI ITypeInfo2_fnGetVarDesc (ITypeInfo2 *iface, UINT index, VARDESC **ppVarDesc)
static HRESULT WINAPI ITypeInfo2_fnGetNames (ITypeInfo2 *iface, MEMBERID memid, BSTR *rgBstrNames, UINT cMaxNames, UINT *pcNames)
static HRESULT WINAPI ITypeInfo2_fnGetRefTypeOfImplType (ITypeInfo2 *iface, UINT index, HREFTYPE *pRefType)
static HRESULT WINAPI ITypeInfo2_fnGetImplTypeFlags (ITypeInfo2 *iface, UINT index, INT *pImplTypeFlags)
static HRESULT WINAPI ITypeInfo2_fnGetIDsOfNames (ITypeInfo2 *iface, LPOLESTR *rgszNames, UINT cNames, MEMBERID *pMemId)
static HRESULT WINAPI ITypeInfo2_fnInvoke (ITypeInfo2 *iface, PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
static HRESULT WINAPI ITypeInfo2_fnGetDocumentation (ITypeInfo2 *iface, MEMBERID memid, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile)
static HRESULT WINAPI ITypeInfo2_fnGetDllEntry (ITypeInfo2 *iface, MEMBERID memid, INVOKEKIND invKind, BSTR *pBstrDllName, BSTR *pBstrName, WORD *pwOrdinal)
static HRESULT WINAPI ITypeInfo2_fnGetRefTypeInfo (ITypeInfo2 *iface, HREFTYPE hRefType, ITypeInfo **ppTInfo)
static HRESULT WINAPI ITypeInfo2_fnAddressOfMember (ITypeInfo2 *iface, MEMBERID memid, INVOKEKIND invKind, PVOID *ppv)
static HRESULT WINAPI ITypeInfo2_fnCreateInstance (ITypeInfo2 *iface, IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObj)
static HRESULT WINAPI ITypeInfo2_fnGetMops (ITypeInfo2 *iface, MEMBERID memid, BSTR *pBstrMops)
static HRESULT WINAPI ITypeInfo2_fnGetContainingTypeLib (ITypeInfo2 *iface, ITypeLib **ppTLib, UINT *pIndex)
static void WINAPI ITypeInfo2_fnReleaseTypeAttr (ITypeInfo2 *iface, TYPEATTR *pTypeAttr)
static void WINAPI ITypeInfo2_fnReleaseFuncDesc (ITypeInfo2 *iface, FUNCDESC *pFuncDesc)
static void WINAPI ITypeInfo2_fnReleaseVarDesc (ITypeInfo2 *iface, VARDESC *pVarDesc)
static HRESULT WINAPI ITypeInfo2_fnGetTypeKind (ITypeInfo2 *iface, TYPEKIND *pTypeKind)
static HRESULT WINAPI ITypeInfo2_fnGetTypeFlags (ITypeInfo2 *iface, ULONG *pTypeFlags)
static HRESULT WINAPI ITypeInfo2_fnGetFuncIndexOfMemId (ITypeInfo2 *iface, MEMBERID memid, INVOKEKIND invKind, UINT *pFuncIndex)
static HRESULT WINAPI ITypeInfo2_fnGetVarIndexOfMemId (ITypeInfo2 *iface, MEMBERID memid, UINT *pVarIndex)
static HRESULT WINAPI ITypeInfo2_fnGetCustData (ITypeInfo2 *iface, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeInfo2_fnGetFuncCustData (ITypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeInfo2_fnGetParamCustData (ITypeInfo2 *iface, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeInfo2_fnGetVarCustData (ITypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeInfo2_fnGetImplTypeCustData (ITypeInfo2 *iface, UINT index, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeInfo2_fnGetDocumentation2 (ITypeInfo2 *iface, MEMBERID memid, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll)
static HRESULT WINAPI ITypeInfo2_fnGetAllCustData (ITypeInfo2 *iface, CUSTDATA *pCustData)
static HRESULT WINAPI ITypeInfo2_fnGetAllFuncCustData (ITypeInfo2 *iface, UINT index, CUSTDATA *pCustData)
static HRESULT WINAPI ITypeInfo2_fnGetAllParamCustData (ITypeInfo2 *iface, UINT indexFunc, UINT indexParam, CUSTDATA *pCustData)
static HRESULT WINAPI ITypeInfo2_fnGetAllVarCustData (ITypeInfo2 *iface, UINT index, CUSTDATA *pCustData)
static HRESULT WINAPI ITypeInfo2_fnGetAllImplTypeCustData (ITypeInfo2 *iface, UINT index, CUSTDATA *pCustData)
static ICreateTypeInfo2ICreateTypeInfo2_Constructor (ICreateTypeLib2Impl *typelib, WCHAR *szName, TYPEKIND tkind)
static HRESULT WINAPI ICreateTypeLib2_fnQueryInterface (ICreateTypeLib2 *iface, REFIID riid, VOID **ppvObject)
static ULONG WINAPI ICreateTypeLib2_fnAddRef (ICreateTypeLib2 *iface)
static HRESULT WINAPI ICreateTypeLib2_fnCreateTypeInfo (ICreateTypeLib2 *iface, LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo **ppCTInfo)
static HRESULT WINAPI ICreateTypeLib2_fnSetName (ICreateTypeLib2 *iface, LPOLESTR szName)
static HRESULT WINAPI ICreateTypeLib2_fnSetVersion (ICreateTypeLib2 *iface, WORD wMajorVerNum, WORD wMinorVerNum)
static HRESULT WINAPI ICreateTypeLib2_fnSetGuid (ICreateTypeLib2 *iface, REFGUID guid)
static HRESULT WINAPI ICreateTypeLib2_fnSetDocString (ICreateTypeLib2 *iface, LPOLESTR szDoc)
static HRESULT WINAPI ICreateTypeLib2_fnSetHelpFileName (ICreateTypeLib2 *iface, LPOLESTR szHelpFileName)
static HRESULT WINAPI ICreateTypeLib2_fnSetHelpContext (ICreateTypeLib2 *iface, DWORD dwHelpContext)
static HRESULT WINAPI ICreateTypeLib2_fnSetLcid (ICreateTypeLib2 *iface, LCID lcid)
static HRESULT WINAPI ICreateTypeLib2_fnSetLibFlags (ICreateTypeLib2 *iface, UINT uLibFlags)
static int ctl2_write_chunk (HANDLE hFile, const void *segment, int length)
static int ctl2_write_segment (ICreateTypeLib2Impl *This, HANDLE hFile, int segment)
static HRESULT ctl2_finalize_typeinfos (ICreateTypeLib2Impl *This, int filesize)
static int ctl2_finalize_segment (ICreateTypeLib2Impl *This, int filepos, int segment)
static void ctl2_write_typeinfos (ICreateTypeLib2Impl *This, HANDLE hFile)
static HRESULT WINAPI ICreateTypeLib2_fnSaveAllChanges (ICreateTypeLib2 *iface)
static HRESULT WINAPI ICreateTypeLib2_fnDeleteTypeInfo (ICreateTypeLib2 *iface, LPOLESTR szName)
static HRESULT WINAPI ICreateTypeLib2_fnSetCustData (ICreateTypeLib2 *iface, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ICreateTypeLib2_fnSetHelpStringContext (ICreateTypeLib2 *iface, ULONG dwContext)
static HRESULT WINAPI ICreateTypeLib2_fnSetHelpStringDll (ICreateTypeLib2 *iface, LPOLESTR szDllName)
static HRESULT WINAPI ITypeLib2_fnQueryInterface (ITypeLib2 *iface, REFIID riid, LPVOID *ppv)
static ULONG WINAPI ITypeLib2_fnAddRef (ITypeLib2 *iface)
static ULONG WINAPI ITypeLib2_fnRelease (ITypeLib2 *iface)
static UINT WINAPI ITypeLib2_fnGetTypeInfoCount (ITypeLib2 *iface)
static HRESULT WINAPI ITypeLib2_fnGetTypeInfo (ITypeLib2 *iface, UINT index, ITypeInfo **ppTInfo)
static HRESULT WINAPI ITypeLib2_fnGetTypeInfoType (ITypeLib2 *iface, UINT index, TYPEKIND *pTKind)
static HRESULT WINAPI ITypeLib2_fnGetTypeInfoOfGuid (ITypeLib2 *iface, REFGUID guid, ITypeInfo **ppTinfo)
static HRESULT WINAPI ITypeLib2_fnGetLibAttr (ITypeLib2 *iface, TLIBATTR **ppTLibAttr)
static HRESULT WINAPI ITypeLib2_fnGetTypeComp (ITypeLib2 *iface, ITypeComp **ppTComp)
static HRESULT WINAPI ITypeLib2_fnGetDocumentation (ITypeLib2 *iface, INT index, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile)
static HRESULT WINAPI ITypeLib2_fnIsName (ITypeLib2 *iface, LPOLESTR szNameBuf, ULONG lHashVal, BOOL *pfName)
static HRESULT WINAPI ITypeLib2_fnFindName (ITypeLib2 *iface, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo **ppTInfo, MEMBERID *rgMemId, USHORT *pcFound)
static void WINAPI ITypeLib2_fnReleaseTLibAttr (ITypeLib2 *iface, TLIBATTR *pTLibAttr)
static HRESULT WINAPI ITypeLib2_fnGetCustData (ITypeLib2 *iface, REFGUID guid, VARIANT *pVarVal)
static HRESULT WINAPI ITypeLib2_fnGetLibStatistics (ITypeLib2 *iface, ULONG *pcUniqueNames, ULONG *pcchUniqueNames)
static HRESULT WINAPI ITypeLib2_fnGetDocumentation2 (ITypeLib2 *iface, INT index, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll)
static HRESULT WINAPI ITypeLib2_fnGetAllCustData (ITypeLib2 *iface, CUSTDATA *pCustData)
static ICreateTypeLib2ICreateTypeLib2_Constructor (SYSKIND syskind, LPCOLESTR szFile)
HRESULT WINAPI CreateTypeLib2 (SYSKIND syskind, LPCOLESTR szFile, ICreateTypeLib2 **ppctlib)
void WINAPI ClearCustData (LPCUSTDATA lpCust)

Variables

static const ICreateTypeInfo2Vtbl ctypeinfo2vt
static const ITypeInfo2Vtbl typeinfo2vt
static const ICreateTypeLib2Vtbl ctypelib2vt
static const ITypeLib2Vtbl typelib2vt

Generated on Sat May 26 2012 05:15:18 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.