#include <stdio.h>
#include "objidl.h"
#include "rpcproxy.h"
#include "wine/atlbase.h"
#include "wine/atlwin.h"
#include "wine/debug.h"
Go to the source code of this file.
|
| WINE_DEFAULT_DEBUG_CHANNEL (atl) |
|
HRESULT WINAPI | AtlModuleInit (_ATL_MODULEW *pM, _ATL_OBJMAP_ENTRYW *p, HINSTANCE h) |
|
static _ATL_OBJMAP_ENTRYW_V1 * | get_objmap_entry (_ATL_MODULEW *mod, unsigned int index) |
|
HRESULT WINAPI | AtlModuleLoadTypeLib (_ATL_MODULEW *pM, LPCOLESTR lpszIndex, BSTR *pbstrPath, ITypeLib **ppTypeLib) |
|
HRESULT WINAPI | AtlModuleTerm (_ATL_MODULE *pM) |
|
HRESULT WINAPI | AtlModuleRegisterClassObjects (_ATL_MODULEW *pM, DWORD dwClsContext, DWORD dwFlags) |
|
HRESULT WINAPI | AtlModuleUnregisterServerEx (_ATL_MODULEW *pM, BOOL bUnRegTypeLib, const CLSID *pCLSID) |
|
HRESULT WINAPI | AtlModuleRegisterServer (_ATL_MODULEW *pM, BOOL bRegTypeLib, const CLSID *clsid) |
|
HRESULT WINAPI | AtlModuleGetClassObject (_ATL_MODULEW *pm, REFCLSID rclsid, REFIID riid, LPVOID *ppv) |
|
HRESULT WINAPI | AtlModuleRegisterTypeLib (_ATL_MODULEW *pm, LPCOLESTR lpszIndex) |
|
HRESULT WINAPI | AtlModuleRevokeClassObjects (_ATL_MODULEW *pm) |
|
HRESULT WINAPI | AtlModuleUnregisterServer (_ATL_MODULEW *pm, const CLSID *clsid) |
|
ATOM WINAPI | AtlModuleRegisterWndClassInfoA (_ATL_MODULEA *pm, _ATL_WNDCLASSINFOA *wci, WNDPROC *pProc) |
|
ATOM WINAPI | AtlModuleRegisterWndClassInfoW (_ATL_MODULEW *pm, _ATL_WNDCLASSINFOW *wci, WNDPROC *pProc) |
|
void WINAPI | AtlModuleAddCreateWndData (_ATL_MODULEW *pM, _AtlCreateWndData *pData, void *pvObject) |
|
void *WINAPI | AtlModuleExtractCreateWndData (_ATL_MODULEW *pM) |
|
HRESULT WINAPI | AtlModuleUpdateRegistryFromResourceD (_ATL_MODULEW *pM, LPCOLESTR lpszRes, BOOL bRegister, struct _ATL_REGMAP_ENTRY *pMapEntries, IRegistrar *pReg) |
|
static HRESULT WINAPI | RegistrarCF_QueryInterface (IClassFactory *iface, REFIID riid, void **ppvObject) |
|
static ULONG WINAPI | RegistrarCF_AddRef (IClassFactory *iface) |
|
static ULONG WINAPI | RegistrarCF_Release (IClassFactory *iface) |
|
static HRESULT WINAPI | RegistrarCF_CreateInstance (IClassFactory *iface, LPUNKNOWN pUnkOuter, REFIID riid, void **ppv) |
|
static HRESULT WINAPI | RegistrarCF_LockServer (IClassFactory *iface, BOOL lock) |
|
HRESULT WINAPI | DllGetClassObject (REFCLSID clsid, REFIID riid, LPVOID *ppvObject) |
|
HRESULT WINAPI | DllRegisterServer (void) |
|
HRESULT WINAPI | DllUnregisterServer (void) |
|
HRESULT WINAPI | DllCanUnloadNow (void) |
|
◆ ATLVer1Size
◆ COBJMACROS
◆ AtlModuleAddCreateWndData()
Definition at line 405 of file atl30.c.
409 pData->m_pThis = pvObject;
CRITICAL_SECTION m_csWindowCreate
_AtlCreateWndData * m_pCreateWndList
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
DWORD WINAPI GetCurrentThreadId(VOID)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Referenced by test_winmodule().
◆ AtlModuleExtractCreateWndData()
Definition at line 425 of file atl30.c.
CRITICAL_SECTION m_csWindowCreate
_AtlCreateWndData * m_pCreateWndList
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
DWORD WINAPI GetCurrentThreadId(VOID)
PSDBQUERYRESULT_VISTA PVOID * ppData
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Referenced by test_winmodule().
◆ AtlModuleGetClassObject()
Definition at line 227 of file atl30.c.
243 TRACE(
"found object %i\n",
i);
244 if (
obj->pfnGetClassObject)
247 hres =
obj->pfnGetClassObject(
obj->pfnCreateInstance,
#define CLASS_E_CLASSNOTAVAILABLE
GLsizei GLsizei GLuint * obj
static _ATL_OBJMAP_ENTRYW_V1 * get_objmap_entry(_ATL_MODULEW *mod, unsigned int index)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define IsEqualCLSID(rclsid1, rclsid2)
◆ AtlModuleInit()
Definition at line 39 of file atl30.c.
44 TRACE(
"(%p %p %p)\n", pM,
p,
h);
56 WARN(
"Unknown structure version (size %i)\n",
size);
78 TRACE(
"Initializing object %i %p\n",
i,
p[
i].pfnObjectMain);
79 if (
p[
i].pfnObjectMain)
CRITICAL_SECTION m_csWindowCreate
GLfloat GLfloat GLfloat GLfloat h
union _ATL_MODULEW_TAG::@3512 u
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
CRITICAL_SECTION m_csObjMap
HINSTANCE m_hInstResource
CRITICAL_SECTION m_csTypeInfoHolder
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
struct _ATL_MODULEW_TAG _ATL_MODULEW
_ATL_OBJMAP_ENTRYW * m_pObjMap
Referenced by test_StructSize(), test_term(), test_winclassinfo(), and test_winmodule().
◆ AtlModuleLoadTypeLib()
Definition at line 101 of file atl30.c.
104 TRACE(
"(%p, %s, %p, %p)\n", pM,
debugstr_w(lpszIndex), pbstrPath, ppTypeLib);
HRESULT WINAPI AtlLoadTypeLib(HINSTANCE inst, LPCOLESTR lpszIndex, BSTR *pbstrPath, ITypeLib **ppTypeLib)
◆ AtlModuleRegisterClassObjects()
Definition at line 133 of file atl30.c.
149 TRACE(
"Registering object %i\n",
i);
150 if (
obj->pfnGetClassObject)
160 WARN(
"Failed to register object %i: 0x%08x\n",
i, rc);
GLsizei GLsizei GLuint * obj
static _ATL_OBJMAP_ENTRYW_V1 * get_objmap_entry(_ATL_MODULEW *mod, unsigned int index)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
HRESULT WINAPI CoRegisterClassObject(REFCLSID rclsid, LPUNKNOWN pUnk, DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
◆ AtlModuleRegisterServer()
Definition at line 181 of file atl30.c.
197 hRes =
obj->pfnUpdateRegistry(
TRUE);
GLsizei GLsizei GLuint * obj
HRESULT WINAPI AtlRegisterTypeLib(HINSTANCE inst, const WCHAR *index)
static _ATL_OBJMAP_ENTRYW_V1 * get_objmap_entry(_ATL_MODULEW *mod, unsigned int index)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HRESULT WINAPI AtlRegisterClassCategoriesHelper(REFCLSID clsid, const struct _ATL_CATMAP_ENTRY *catmap, BOOL reg)
#define IsEqualCLSID(rclsid1, rclsid2)
◆ AtlModuleRegisterTypeLib()
Definition at line 265 of file atl30.c.
HRESULT WINAPI AtlRegisterTypeLib(HINSTANCE inst, const WCHAR *index)
◆ AtlModuleRegisterWndClassInfoA()
Definition at line 298 of file atl30.c.
302 FIXME(
"%p %p %p semi-stub\n",
pm, wci, pProc);
335 TRACE(
"returning 0x%04x\n", atom);
#define sprintf(buf, format,...)
CHAR m_szAutoName[sizeof("ATL:")+sizeof(void *) *2]
ATOM WINAPI RegisterClassExA(_In_ CONST WNDCLASSEXA *)
HCURSOR WINAPI LoadCursorA(_In_opt_ HINSTANCE, _In_ LPCSTR)
BOOL WINAPI GetClassInfoExA(_In_opt_ HINSTANCE, _In_ LPCSTR, _Out_ LPWNDCLASSEXA)
◆ AtlModuleRegisterWndClassInfoW()
Definition at line 357 of file atl30.c.
361 FIXME(
"%p %p %p semi-stub\n",
pm, wci, pProc);
398 TRACE(
"returning 0x%04x\n", atom);
BOOL WINAPI GetClassInfoExW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _Out_ LPWNDCLASSEXW)
WCHAR m_szAutoName[sizeof("ATL:")+sizeof(void *) *2]
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
Referenced by test_winclassinfo().
◆ AtlModuleRevokeClassObjects()
◆ AtlModuleTerm()
Definition at line 112 of file atl30.c.
_ATL_TERMFUNC_ELEM * m_pTermFuncs
struct _ATL_TERMFUNC_ELEM_TAG * pNext
#define HeapFree(x, y, z)
Referenced by test_term().
◆ AtlModuleUnregisterServer()
◆ AtlModuleUnregisterServerEx()
Definition at line 171 of file atl30.c.
173 FIXME(
"(%p, %i, %p) stub\n", pM, bUnRegTypeLib, pCLSID);
◆ AtlModuleUpdateRegistryFromResourceD()
Definition at line 453 of file atl30.c.
456 TRACE(
"(%p %s %d %p %p)\n", pM,
debugstr_w(lpszRes), bRegister, pMapEntries, pReg);
HRESULT WINAPI AtlUpdateRegistryFromResourceD(HINSTANCE inst, LPCOLESTR res, BOOL bRegister, struct _ATL_REGMAP_ENTRY *pMapEntries, IRegistrar *pReg)
◆ DllCanUnloadNow()
◆ DllGetClassObject()
Definition at line 574 of file atl30.c.
#define CLASS_E_CLASSNOTAVAILABLE
REFIID LPVOID * ppvObject
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
static IClassFactory RegistrarCF
◆ DllRegisterServer()
Definition at line 588 of file atl30.c.
592 return do_register_server(
TRUE);
HRESULT __wine_register_resources(HMODULE module) DECLSPEC_HIDDEN
◆ DllUnregisterServer()
Definition at line 601 of file atl30.c.
604 return do_register_server(
FALSE);
HRESULT __wine_unregister_resources(HMODULE module) DECLSPEC_HIDDEN
◆ get_objmap_entry()
◆ RegistrarCF_AddRef()
◆ RegistrarCF_CreateInstance()
Definition at line 484 of file atl30.c.
501 hres = IRegistrar_QueryInterface(registrar,
riid,
ppv);
502 IRegistrar_Release(registrar);
HRESULT WINAPI AtlCreateRegistrar(IRegistrar **ret)
#define CLASS_E_NOAGGREGATION
◆ RegistrarCF_LockServer()
◆ RegistrarCF_QueryInterface()
Definition at line 461 of file atl30.c.
467 IClassFactory_AddRef( iface );
REFIID LPVOID * ppvObject
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
const GUID IID_IClassFactory
◆ RegistrarCF_Release()
◆ WINE_DEFAULT_DEBUG_CHANNEL()
WINE_DEFAULT_DEBUG_CHANNEL |
( |
atl |
| ) |
|
◆ atl_instance
◆ IRegistrarCFVtbl
const IClassFactoryVtbl IRegistrarCFVtbl |
|
static |
Initial value:= {
}
static ULONG WINAPI RegistrarCF_AddRef(IClassFactory *iface)
static HRESULT WINAPI RegistrarCF_QueryInterface(IClassFactory *iface, REFIID riid, void **ppvObject)
static HRESULT WINAPI RegistrarCF_LockServer(IClassFactory *iface, BOOL lock)
static ULONG WINAPI RegistrarCF_Release(IClassFactory *iface)
static HRESULT WINAPI RegistrarCF_CreateInstance(IClassFactory *iface, LPUNKNOWN pUnkOuter, REFIID riid, void **ppv)
Definition at line 512 of file atl30.c.
◆ RegistrarCF