ReactOS  0.4.15-dev-341-g17c5fb8
ATL Namespace Reference

Namespaces

 _CSTRING_IMPL_
 

Classes

struct  _ATL_BASE_MODULE70
 
struct  _ATL_CATMAP_ENTRY
 
struct  _ATL_COM_MODULE70
 
struct  _ATL_CONNMAP_ENTRY
 
struct  _ATL_INTMAP_ENTRY
 
struct  _ATL_MODULE70
 
struct  _ATL_MSG
 
struct  _ATL_OBJMAP_ENTRY30
 
struct  _ATL_REGMAP_ENTRY
 
struct  _ATL_TERMFUNC_ELEM
 
struct  _ATL_WIN_MODULE70
 
struct  _ATL_WNDCLASSINFOW
 
struct  _AtlCreateWndData
 
class  _Copy
 
class  _Copy< CONNECTDATA >
 
class  _CopyInterface
 
class  _ICPLocator
 
class  _U_MENUorID
 
class  _U_RECT
 
struct  ATLSTRINGRESOURCEIMAGE
 
class  CAtlArray
 
class  CAtlBaseModule
 
class  CAtlComModule
 
class  CAtlDllModuleT
 
class  CAtlExeModuleT
 
class  CAtlFileMapping
 
class  CAtlFileMappingBase
 
class  CAtlList
 
class  CAtlModule
 
class  CAtlModuleT
 
class  CAtlPlex
 
class  CAtlStringMgr
 
class  CAtlWinModule
 
class  CComAggObject
 
class  CComAllocator
 
class  CComAutoCriticalSection
 
class  CComAutoDeleteCriticalSection
 
class  CComBSTR
 
class  CComClassFactory
 
class  CComClassFactorySingleton
 
class  CComCoClass
 
class  CComContainedObject
 
class  CComCreator
 
class  CComCreator2
 
class  CComCriticalSection
 
class  CComCritSecLock
 
class  CComDynamicUnkArray
 
class  CComEnum
 
class  CComEnumImpl
 
class  CComFailCreator
 
class  CComFakeCriticalSection
 
class  CComHeapPtr
 
class  CComModule
 
class  CComMultiThreadModel
 
class  CComMultiThreadModelNoCS
 
class  CComObject
 
class  CComObjectCached
 
class  CComObjectRootBase
 
class  CComObjectRootEx
 
class  CComPolyObject
 
class  CComPtr
 
class  CComQIIDPtr
 
class  CComSafeDeleteCriticalSection
 
class  CComSingleThreadModel
 
class  CComVariant
 
class  CContainedWindowT
 
class  CDefaultCompareTraits
 
class  CDefaultElementTraits
 
class  CDialogImpl
 
class  CDialogImplBaseT
 
class  CElementTraits
 
class  CElementTraitsBase
 
class  CFileTime
 
class  CFileTimeSpan
 
class  CHandle
 
class  CHeapPtrElementTraits
 
class  CHeapPtrList
 
class  ChTraitsBase
 
class  ChTraitsBase< wchar_t >
 
class  ChTraitsCRT
 
class  ChTraitsCRT< char >
 
class  ChTraitsOS
 
class  CImage
 
class  CMessageMap
 
class  CNilStringData
 
class  CPathT
 
class  CPropertyPageImpl
 
class  CRegKey
 
class  CRegObject
 
class  CSimpleArray
 
class  CSimpleArrayEqualHelper
 
class  CSimpleArrayEqualHelperFalse
 
class  CSimpleMap
 
class  CSimpleMapEqualHelper
 
class  CSimpleMapEqualHelperFalse
 
class  CSimpleStringT
 
struct  CStringData
 
class  CStringT
 
class  CTime
 
class  CTimeSpan
 
class  CWin32Heap
 
class  CWindow
 
class  CWindowImpl
 
class  CWindowImplBaseT
 
class  CWindowImplRoot
 
class  CWinTraits
 
class  CWinTraitsOR
 
class  CWndProcThunk
 
class  IAtlMemMgr
 
class  IAtlStringMgr
 
class  IConnectionPointContainerImpl
 
class  IConnectionPointImpl
 
class  IDispatchImpl
 
class  StrTraitATL
 

Typedefs

typedef REFIID riid
 
typedef REFIID LPVOIDppv
 
typedef const struct _ATL_CATMAP_ENTRY *() _ATL_CATMAPFUNC()
 
typedef _ATL_OBJMAP_ENTRY30 _ATL_OBJMAP_ENTRY
 
typedef _ATL_MODULE70 _ATL_MODULE
 
typedef REFIID LPVOID DWORD_PTR dw
 
typedef _ATL_COM_MODULE70 _ATL_COM_MODULE
 
typedef _ATL_WIN_MODULE70 _ATL_WIN_MODULE
 
typedef CComMultiThreadModel CComObjectThreadModel
 
typedef CComMultiThreadModel CComGlobalsThreadModel
 
typedef _ATL_BASE_MODULE70 _ATL_BASE_MODULE
 
typedef CPathT< CStringCPath
 
typedef CPathT< CStringACPathA
 
typedef CPathT< CStringWCPathW
 
typedef CSimpleStringT< CHARCSimpleString
 
typedef CStringT< wchar_t, StrTraitATL< wchar_t, ChTraitsCRT< wchar_t > > > CAtlStringW
 
typedef CStringT< char, StrTraitATL< char, ChTraitsCRT< char > > > CAtlStringA
 
typedef CAtlStringW CStringW
 
typedef CAtlStringA CStringA
 
typedef CAtlStringA CAtlString
 
typedef CStringA CString
 
typedef _ATL_WNDCLASSINFOW CWndClassInfo
 
typedef CWinTraits< WS_CHILD|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, 0 > CControlWinTraits
 
typedef CWinTraits< WS_OVERLAPPEDWINDOW|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, WS_EX_APPWINDOW|WS_EX_WINDOWEDGECFrameWinTraits
 
typedef CWinTraits< WS_OVERLAPPEDWINDOW|WS_CHILD|WS_VISIBLE|WS_CLIPCHILDREN|WS_CLIPSIBLINGS, WS_EX_MDICHILDCMDIChildWinTraits
 
typedef CContainedWindowT< CWindowCContainedWindow
 

Enumerations

enum  CComEnumFlags { AtlFlagNoCopy = 0, AtlFlagTakeOwnership = 2, AtlFlagCopy = 3 }
 

Functions

 __declspec (selectany) CAtlModule *_pAtlModule = NULL
 
typedef HRESULT (WINAPI _ATL_CREATORFUNC)(void *pv
 
typedef LPCTSTR (WINAPI _ATL_DESCRIPTIONFUNC)()
 
typedef void (__stdcall _ATL_TERMFUNC)(DWORD_PTR dw)
 
HRESULT WINAPI AtlWinModuleInit (_ATL_WIN_MODULE *pWinModule)
 
HRESULT WINAPI AtlWinModuleTerm (_ATL_WIN_MODULE *pWinModule, HINSTANCE hInst)
 
HRESULT WINAPI AtlInternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
void WINAPI AtlWinModuleAddCreateWndData (_ATL_WIN_MODULE *pWinModule, _AtlCreateWndData *pData, void *pObject)
 
void *WINAPI AtlWinModuleExtractCreateWndData (_ATL_WIN_MODULE *pWinModule)
 
HRESULT WINAPI AtlComModuleGetClassObject (_ATL_COM_MODULE *pComModule, REFCLSID rclsid, REFIID riid, LPVOID *ppv)
 
HRESULT WINAPI AtlComModuleRegisterServer (_ATL_COM_MODULE *mod, BOOL bRegTypeLib, const CLSID *clsid)
 
HRESULT WINAPI AtlComModuleUnregisterServer (_ATL_COM_MODULE *mod, BOOL bRegTypeLib, const CLSID *clsid)
 
HRESULT WINAPI AtlComModuleRegisterClassObjects (_ATL_COM_MODULE *module, DWORD context, DWORD flags)
 
HRESULT WINAPI AtlComModuleRevokeClassObjects (_ATL_COM_MODULE *module)
 
BOOL WINAPI InlineIsEqualUnknown (REFGUID rguid1)
 
HRESULT __stdcall AtlAdvise (IUnknown *pUnkCP, IUnknown *pUnk, const IID &iid, LPDWORD pdw)
 
HRESULT __stdcall AtlUnadvise (IUnknown *pUnkCP, const IID &iid, DWORD dw)
 
HRESULT WINAPI AtlLoadTypeLib (HINSTANCE inst, LPCOLESTR lpszIndex, BSTR *pbstrPath, ITypeLib **ppTypeLib)
 
HRESULT WINAPI AtlRegisterTypeLib (HINSTANCE inst, const WCHAR *index)
 
HRESULT WINAPI AtlRegisterClassCategoriesHelper (REFCLSID clsid, const _ATL_CATMAP_ENTRY *catmap, BOOL reg)
 
HRESULT AtlHresultFromLastError () throw ()
 
const ATLSTRINGRESOURCEIMAGE_AtlGetStringResourceImage (_In_ HINSTANCE hInstance, _In_ HRSRC hResource, _In_ UINT id)
 
const ATLSTRINGRESOURCEIMAGEAtlGetStringResourceImage (_In_ HINSTANCE hInstance, _In_ UINT id) throw ()
 
const ATLSTRINGRESOURCEIMAGEAtlGetStringResourceImage (_In_ HINSTANCE hInstance, _In_ UINT id, _In_ WORD wLanguage)
 
HINSTANCE AtlFindStringResourceInstance (UINT nID, WORD wLanguage=0)
 
void AtlThrowImp (HRESULT hr)
 
UINT WINAPI _AtlGetConversionACP () throw ()
 

Typedef Documentation

◆ _ATL_BASE_MODULE

Definition at line 188 of file atlcore.h.

◆ _ATL_CATMAPFUNC

typedef const struct _ATL_CATMAP_ENTRY*() ATL::_ATL_CATMAPFUNC()

Definition at line 75 of file atlbase.h.

◆ _ATL_COM_MODULE

Definition at line 162 of file atlbase.h.

◆ _ATL_MODULE

Definition at line 134 of file atlbase.h.

◆ _ATL_OBJMAP_ENTRY

Definition at line 116 of file atlbase.h.

◆ _ATL_WIN_MODULE

Definition at line 173 of file atlbase.h.

◆ CAtlString

Definition at line 138 of file atlstr.h.

◆ CAtlStringA

Definition at line 127 of file atlstr.h.

◆ CAtlStringW

Definition at line 126 of file atlstr.h.

◆ CComGlobalsThreadModel

Definition at line 393 of file atlbase.h.

◆ CComObjectThreadModel

Definition at line 392 of file atlbase.h.

◆ CContainedWindow

Definition at line 1778 of file atlwin.h.

◆ CControlWinTraits

◆ CFrameWinTraits

◆ CMDIChildWinTraits

◆ CPath

Definition at line 383 of file atlpath.h.

◆ CPathA

Definition at line 384 of file atlpath.h.

◆ CPathW

Definition at line 385 of file atlpath.h.

◆ CSimpleString

Definition at line 626 of file atlsimpstr.h.

◆ CString

Definition at line 139 of file atlstr.h.

◆ CStringA

Definition at line 131 of file atlstr.h.

◆ CStringW

Definition at line 130 of file atlstr.h.

◆ CWndClassInfo

Definition at line 64 of file atlwin.h.

◆ dw

Definition at line 136 of file atlbase.h.

◆ ppv

typedef REFIID LPVOID * ATL::ppv

Definition at line 73 of file atlbase.h.

◆ riid

typedef REFIID ATL::riid

Definition at line 73 of file atlbase.h.

Enumeration Type Documentation

◆ CComEnumFlags

Enumerator
AtlFlagNoCopy 
AtlFlagTakeOwnership 
AtlFlagCopy 

Definition at line 846 of file atlcom.h.

847 {
848  AtlFlagNoCopy = 0,
849  AtlFlagTakeOwnership = 2, // BitOwn
850  AtlFlagCopy = 3 // BitOwn | BitCopy
851 };

Function Documentation

◆ __declspec()

ATL::__declspec ( selectany  ) = NULL

Definition at line 525 of file atlbase.h.

525 {0x0, 0x0, 0x0, {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0} };

◆ _AtlGetConversionACP()

UINT WINAPI ATL::_AtlGetConversionACP ( )
throw (
)
inline

Definition at line 14 of file cstringt.h.

15 {
16 #ifdef _CONVERSION_DONT_USE_THREAD_LOCALE
17  return CP_ACP;
18 #else
19  return CP_THREAD_ACP;
20 #endif
21 }
#define CP_ACP
Definition: compat.h:99
#define CP_THREAD_ACP
Definition: winnls.h:230

Referenced by ATL::ChTraitsCRT< _CharType >::ConvertToBaseType(), ATL::ChTraitsCRT< char >::ConvertToBaseType(), ATL::ChTraitsCRT< _CharType >::GetBaseTypeLength(), and ATL::ChTraitsCRT< char >::GetBaseTypeLength().

◆ _AtlGetStringResourceImage()

const ATLSTRINGRESOURCEIMAGE* ATL::_AtlGetStringResourceImage ( _In_ HINSTANCE  hInstance,
_In_ HRSRC  hResource,
_In_ UINT  id 
)
inline

Definition at line 240 of file atlcore.h.

244 {
245  const ATLSTRINGRESOURCEIMAGE* pImage;
246  const ATLSTRINGRESOURCEIMAGE* pImageEnd;
247  ULONG nResourceSize;
248  HGLOBAL hGlobal;
249  UINT iIndex;
250 
251  hGlobal = ::LoadResource(hInstance, hResource);
252  if (hGlobal == NULL) return NULL;
253 
254  pImage = (const ATLSTRINGRESOURCEIMAGE*)::LockResource(hGlobal);
255  if (pImage == NULL) return NULL;
256 
257  nResourceSize = ::SizeofResource(hInstance, hResource);
258  pImageEnd = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE(pImage) + nResourceSize);
259  iIndex = id & 0x000f;
260 
261  while ((iIndex > 0) && (pImage < pImageEnd))
262  {
263  pImage = (const ATLSTRINGRESOURCEIMAGE*)(LPBYTE(pImage) + (sizeof(ATLSTRINGRESOURCEIMAGE) + (pImage->nLength * sizeof(WCHAR))));
264  iIndex--;
265  }
266 
267  if (pImage >= pImageEnd) return NULL;
268  if (pImage->nLength == 0) return NULL;
269 
270  return pImage;
271 }
LPVOID WINAPI LockResource(HGLOBAL handle)
Definition: res.c:550
HINSTANCE hInstance
Definition: charmap.c:20
unsigned char * LPBYTE
Definition: typedefs.h:53
HGLOBAL WINAPI LoadResource(HINSTANCE hModule, HRSRC hRsrc)
Definition: res.c:532
smooth NULL
Definition: ftsmooth.c:416
__wchar_t WCHAR
Definition: xmlstorage.h:180
unsigned int UINT
Definition: ndis.h:50
DWORD WINAPI SizeofResource(HINSTANCE hModule, HRSRC hRsrc)
Definition: res.c:568
unsigned int ULONG
Definition: retypes.h:1

Referenced by AtlGetStringResourceImage().

◆ AtlAdvise()

HRESULT __stdcall ATL::AtlAdvise ( IUnknown pUnkCP,
IUnknown pUnk,
const IID iid,
LPDWORD  pdw 
)
inline

Definition at line 1470 of file atlbase.h.

1471 {
1473  CComPtr<IConnectionPoint> connectionPoint;
1474  HRESULT hResult;
1475 
1476  if (pUnkCP == NULL)
1477  return E_INVALIDARG;
1478  hResult = pUnkCP->QueryInterface(IID_IConnectionPointContainer, (void **)&container);
1479  if (FAILED(hResult))
1480  return hResult;
1481  hResult = container->FindConnectionPoint(iid, &connectionPoint);
1482  if (FAILED(hResult))
1483  return hResult;
1484  return connectionPoint->Advise(pUnk, pdw);
1485 }
const GUID IID_IConnectionPointContainer
struct container container
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:78
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
Definition: dplayx.c:30

◆ AtlComModuleGetClassObject()

HRESULT WINAPI ATL::AtlComModuleGetClassObject ( _ATL_COM_MODULE pComModule,
REFCLSID  rclsid,
REFIID  riid,
LPVOID ppv 
)

◆ AtlComModuleRegisterClassObjects()

HRESULT WINAPI ATL::AtlComModuleRegisterClassObjects ( _ATL_COM_MODULE module,
DWORD  context,
DWORD  flags 
)
inline

Definition at line 1807 of file atlbase.h.

1808 {
1809  _ATL_OBJMAP_ENTRY **iter;
1810  IUnknown* unk = NULL;
1811  HRESULT hr;
1812 
1813  if (!module)
1814  return E_INVALIDARG;
1815 
1816  for (iter = module->m_ppAutoObjMapFirst; iter < module->m_ppAutoObjMapLast; iter++)
1817  {
1818  if (!(*iter)->pfnGetClassObject)
1819  continue;
1820 
1821  hr = (*iter)->pfnGetClassObject((void*)(*iter)->pfnCreateInstance, IID_IUnknown, (void**)&unk);
1822  if (FAILED(hr))
1823  return hr;
1824 
1825  hr = CoRegisterClassObject(*(*iter)->pclsid, unk, context, flags, &(*iter)->dwRegister);
1826  unk->Release();
1827  if (FAILED(hr))
1828  return hr;
1829  }
1830 
1831  return S_OK;
1832 }
HRESULT hr
Definition: shlfolder.c:183
Definition: http.c:7094
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:78
const GUID IID_IUnknown
nsrefcnt Release()
GLbitfield flags
Definition: glext.h:7161
HRESULT WINAPI CoRegisterClassObject(REFCLSID rclsid, LPUNKNOWN pUnk, DWORD dwClsContext, DWORD flags, LPDWORD lpdwRegister)
Definition: compobj.c:2897
#define S_OK
Definition: intsafe.h:59

Referenced by ATL::CAtlExeModuleT< T >::RegisterClassObjects().

◆ AtlComModuleRegisterServer()

HRESULT __stdcall ATL::AtlComModuleRegisterServer ( _ATL_COM_MODULE mod,
BOOL  bRegTypeLib,
const CLSID clsid 
)
inline

Definition at line 1725 of file atlbase.h.

1726 {
1727  HRESULT hResult = S_OK;
1728 
1729  for (_ATL_OBJMAP_ENTRY ** iter = mod->m_ppAutoObjMapFirst; iter < mod->m_ppAutoObjMapLast; iter++)
1730  {
1731  if (!*iter)
1732  continue;
1733  _ATL_OBJMAP_ENTRY* entry = *iter;
1734  if (clsid && !IsEqualCLSID(*entry->pclsid, *clsid))
1735  continue;
1736 
1737  hResult = entry->pfnUpdateRegistry(TRUE);
1738  if (FAILED(hResult))
1739  return hResult;
1740 
1741  const _ATL_CATMAP_ENTRY *catmap = entry->pfnGetCategoryMap();
1742  if (catmap)
1743  {
1744  hResult = AtlRegisterClassCategoriesHelper(*entry->pclsid, catmap, TRUE);
1745  if (FAILED(hResult))
1746  return hResult;
1747  }
1748  }
1749 
1750  if (bRegTypeLib)
1751  {
1752  hResult = AtlRegisterTypeLib(mod->m_hInstTypeLib, NULL);
1753  }
1754 
1755  return hResult;
1756 }
#define TRUE
Definition: types.h:120
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:78
REFCLSID clsid
Definition: msctf.c:82
HRESULT WINAPI AtlRegisterTypeLib(HINSTANCE, LPCOLESTR)
uint32_t entry
Definition: isohybrid.c:63
#define S_OK
Definition: intsafe.h:59
HRESULT WINAPI AtlRegisterClassCategoriesHelper(REFCLSID, const struct _ATL_CATMAP_ENTRY *, BOOL)
Definition: atl.c:747
Definition: atlbase.h:62
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
static int mod
Definition: i386-dis.c:1273

Referenced by ATL::CAtlComModule::RegisterServer().

◆ AtlComModuleRevokeClassObjects()

HRESULT WINAPI ATL::AtlComModuleRevokeClassObjects ( _ATL_COM_MODULE module)
inline

Definition at line 1836 of file atlbase.h.

1837 {
1838  _ATL_OBJMAP_ENTRY **iter;
1839  HRESULT hr;
1840 
1841  if (!module)
1842  return E_INVALIDARG;
1843 
1844  for (iter = module->m_ppAutoObjMapFirst; iter < module->m_ppAutoObjMapLast; iter++)
1845  {
1846  hr = CoRevokeClassObject((*iter)->dwRegister);
1847  if (FAILED(hr))
1848  return hr;
1849  }
1850 
1851  return S_OK;
1852 }
HRESULT hr
Definition: shlfolder.c:183
#define E_INVALIDARG
Definition: ddrawi.h:101
HRESULT WINAPI DECLSPEC_HOTPATCH CoRevokeClassObject(DWORD dwRegister)
Definition: compobj.c:1086
LONG HRESULT
Definition: typedefs.h:78
#define S_OK
Definition: intsafe.h:59

Referenced by ATL::CAtlExeModuleT< T >::RevokeClassObjects().

◆ AtlComModuleUnregisterServer()

HRESULT WINAPI ATL::AtlComModuleUnregisterServer ( _ATL_COM_MODULE mod,
BOOL  bRegTypeLib,
const CLSID clsid 
)
inline

Definition at line 1759 of file atlbase.h.

1760 {
1761  HRESULT hResult = S_OK;
1762 
1763  for (_ATL_OBJMAP_ENTRY **iter = mod->m_ppAutoObjMapFirst; iter < mod->m_ppAutoObjMapLast; iter++)
1764  {
1765  if (!*iter)
1766  continue;
1767  _ATL_OBJMAP_ENTRY* entry = *iter;
1768  if (clsid && !IsEqualCLSID(*entry->pclsid, *clsid))
1769  continue;
1770 
1771  const _ATL_CATMAP_ENTRY *catmap = entry->pfnGetCategoryMap();
1772  if (catmap)
1773  {
1774  hResult = AtlRegisterClassCategoriesHelper(*entry->pclsid, catmap, FALSE);
1775  if (FAILED(hResult))
1776  return hResult;
1777  }
1778 
1779  hResult = entry->pfnUpdateRegistry(FALSE);
1780  if (FAILED(hResult))
1781  return hResult;
1782  }
1783 
1784  if (bUnRegTypeLib)
1785  {
1787  TLIBATTR *attr;
1788  CComBSTR path;
1789 
1790  hResult = AtlLoadTypeLib(mod->m_hInstTypeLib, NULL, &path, &typelib);
1791  if (FAILED(hResult))
1792  return hResult;
1793 
1794  hResult = typelib->GetLibAttr(&attr);
1795  if (SUCCEEDED(hResult))
1796  {
1797  hResult = UnRegisterTypeLib(attr->guid, attr->wMajorVerNum, attr->wMinorVerNum, attr->lcid, attr->syskind);
1799  }
1800  }
1801 
1802  return hResult;
1803 }
GLsizei const GLchar ** path
Definition: glext.h:7234
static ITypeLib * typelib
Definition: apps.c:108
smooth NULL
Definition: ftsmooth.c:416
HRESULT WINAPI AtlLoadTypeLib(HINSTANCE, LPCOLESTR, BSTR *, ITypeLib **)
Definition: atl.c:341
HRESULT GetLibAttr([out] TLIBATTR **ppTLibAttr)
LONG HRESULT
Definition: typedefs.h:78
Definition: cookie.c:201
REFCLSID clsid
Definition: msctf.c:82
__u8 attr
Definition: mkdosfs.c:359
uint32_t entry
Definition: isohybrid.c:63
HRESULT WINAPI UnRegisterTypeLib(REFGUID libid, WORD wVerMajor, WORD wVerMinor, LCID lcid, SYSKIND syskind)
Definition: typelib.c:882
#define S_OK
Definition: intsafe.h:59
HRESULT WINAPI AtlRegisterClassCategoriesHelper(REFCLSID, const struct _ATL_CATMAP_ENTRY *, BOOL)
Definition: atl.c:747
void ReleaseTLibAttr([in] TLIBATTR *pTLibAttr)
Definition: atlbase.h:62
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
#define SUCCEEDED(hr)
Definition: intsafe.h:57
static int mod
Definition: i386-dis.c:1273

Referenced by ATL::CAtlComModule::UnregisterServer().

◆ AtlFindStringResourceInstance()

HINSTANCE ATL::AtlFindStringResourceInstance ( UINT  nID,
WORD  wLanguage = 0 
)
inline

Definition at line 294 of file atlcore.h.

297 {
298  const ATLSTRINGRESOURCEIMAGE* strRes = NULL;
299  HINSTANCE hInst = _AtlBaseModule.GetHInstanceAt(0);
300 
301  for (int i = 1; hInst != NULL && strRes == NULL; hInst = _AtlBaseModule.GetHInstanceAt(i++))
302  {
303  strRes = AtlGetStringResourceImage(hInst, nID, wLanguage);
304  if (strRes != NULL) return hInst;
305  }
306 
307  return NULL;
308 }
const ATLSTRINGRESOURCEIMAGE * AtlGetStringResourceImage(_In_ HINSTANCE hInstance, _In_ UINT id, _In_ WORD wLanguage)
Definition: atlcore.h:283
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
Definition: glfuncs.h:248
smooth NULL
Definition: ftsmooth.c:416
HINSTANCE hInst
Definition: dxdiag.c:13

Referenced by ATL::StrTraitATL< _BaseType, StringIterator >::FindStringResourceInstance().

◆ AtlGetStringResourceImage() [1/2]

const ATLSTRINGRESOURCEIMAGE* ATL::AtlGetStringResourceImage ( _In_ HINSTANCE  hInstance,
_In_ UINT  id 
)
throw (
)
inline

Definition at line 273 of file atlcore.h.

276 {
277  HRSRC hResource;
278  hResource = ::FindResourceW(hInstance, MAKEINTRESOURCEW((((id >> 4) + 1) & static_cast<WORD>(~0))), (LPWSTR)RT_STRING);
279  if (hResource == NULL) return NULL;
280  return _AtlGetStringResourceImage(hInstance, hResource, id);
281 }
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
Definition: res.c:176
HINSTANCE hInstance
Definition: charmap.c:20
smooth NULL
Definition: ftsmooth.c:416
#define RT_STRING
Definition: pedump.c:368
const ATLSTRINGRESOURCEIMAGE * _AtlGetStringResourceImage(_In_ HINSTANCE hInstance, _In_ HRSRC hResource, _In_ UINT id)
Definition: atlcore.h:240
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by AtlFindStringResourceInstance(), and ATL::CStringT< BaseType, StringTraits >::LoadString().

◆ AtlGetStringResourceImage() [2/2]

const ATLSTRINGRESOURCEIMAGE* ATL::AtlGetStringResourceImage ( _In_ HINSTANCE  hInstance,
_In_ UINT  id,
_In_ WORD  wLanguage 
)
inline

Definition at line 283 of file atlcore.h.

287 {
288  HRSRC hResource;
289  hResource = ::FindResourceExW(hInstance, (LPWSTR)RT_STRING, MAKEINTRESOURCEW((((id >> 4) + 1) & static_cast<WORD>(~0))), wLanguage);
290  if (hResource == NULL) return NULL;
291  return _AtlGetStringResourceImage(hInstance, hResource, id);
292 }
HINSTANCE hInstance
Definition: charmap.c:20
smooth NULL
Definition: ftsmooth.c:416
HRSRC WINAPI FindResourceExW(HMODULE hModule, LPCWSTR type, LPCWSTR name, WORD lang)
Definition: res.c:164
#define RT_STRING
Definition: pedump.c:368
const ATLSTRINGRESOURCEIMAGE * _AtlGetStringResourceImage(_In_ HINSTANCE hInstance, _In_ HRSRC hResource, _In_ UINT id)
Definition: atlcore.h:240
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
WCHAR * LPWSTR
Definition: xmlstorage.h:184

◆ AtlHresultFromLastError()

HRESULT ATL::AtlHresultFromLastError ( )
throw (
)
inline

Definition at line 56 of file atlcomcli.h.

57 {
58  DWORD dwError = ::GetLastError();
59  return HRESULT_FROM_WIN32(dwError);
60 }
#define HRESULT_FROM_WIN32(x)
Definition: winerror.h:92
DWORD WINAPI GetLastError(VOID)
Definition: except.c:1059
unsigned long DWORD
Definition: ntddk_ex.h:95

Referenced by ATL::CAtlFileMappingBase::CopyFrom(), ATL::CAtlFileMappingBase::MapFile(), ATL::CAtlFileMappingBase::MapSharedMem(), ATL::CAtlFileMappingBase::OpenMapping(), and ATL::CAtlFileMappingBase::Unmap().

◆ AtlInternalQueryInterface()

HRESULT __stdcall ATL::AtlInternalQueryInterface ( void pThis,
const _ATL_INTMAP_ENTRY pEntries,
REFIID  iid,
void **  ppvObject 
)
inline

Definition at line 1504 of file atlbase.h.

1505 {
1506  int i;
1507  IUnknown *resultInterface;
1508  HRESULT hResult;
1509 
1510  ATLASSERT(pThis != NULL && pEntries != NULL);
1511  if (pThis == NULL || pEntries == NULL)
1512  return E_INVALIDARG;
1513  ATLASSERT(ppvObject != NULL);
1514  if (ppvObject == NULL)
1515  return E_POINTER;
1516 
1517  if (InlineIsEqualUnknown(iid))
1518  {
1519  resultInterface = reinterpret_cast<IUnknown *>(reinterpret_cast<char *>(pThis) + pEntries[0].dw);
1520  *ppvObject = resultInterface;
1521  resultInterface->AddRef();
1522  return S_OK;
1523  }
1524 
1525  i = 0;
1526  while (pEntries[i].pFunc != 0)
1527  {
1528  if (pEntries[i].piid == NULL || InlineIsEqualGUID(iid, *pEntries[i].piid))
1529  {
1530  if (pEntries[i].pFunc == reinterpret_cast<_ATL_CREATORARGFUNC *>(1))
1531  {
1532  ATLASSERT(pEntries[i].piid != NULL);
1533  resultInterface = reinterpret_cast<IUnknown *>(reinterpret_cast<char *>(pThis) + pEntries[i].dw);
1534  *ppvObject = resultInterface;
1535  resultInterface->AddRef();
1536  return S_OK;
1537  }
1538  else
1539  {
1540  hResult = pEntries[i].pFunc(pThis, iid, ppvObject, 0);
1541  if (hResult == S_OK)
1542  return hResult;
1543  if (FAILED(hResult) && pEntries[i].piid != NULL)
1544  break;
1545  }
1546  }
1547  i++;
1548  }
1549  *ppvObject = NULL;
1550  return E_NOINTERFACE;
1551 }
#define E_NOINTERFACE
Definition: winerror.h:2364
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
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
Definition: glfuncs.h:248
REFIID LPVOID DWORD_PTR dw
Definition: atlbase.h:40
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:78
BOOL WINAPI InlineIsEqualUnknown(REFGUID rguid1)
Definition: atlbase.h:324
ULONG AddRef()
REFIID LPVOID * ppvObject
Definition: precomp.h:44
#define S_OK
Definition: intsafe.h:59
_ATL_CREATORARGFUNC * pFunc
Definition: atlbase.h:144
#define E_POINTER
Definition: winerror.h:2365
#define InlineIsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:142

Referenced by ATL::CComObjectRootBase::InternalQueryInterface().

◆ AtlLoadTypeLib()

HRESULT WINAPI ATL::AtlLoadTypeLib ( HINSTANCE  inst,
LPCOLESTR  lpszIndex,
BSTR pbstrPath,
ITypeLib **  ppTypeLib 
)
inline

Definition at line 1611 of file atlbase.h.

1613 {
1614  size_t index_len = lpszIndex ? wcslen(lpszIndex) : 0;
1616  path.Allocate(MAX_PATH + index_len + wcslen(L".tlb"));
1617 
1618  if (!path)
1619  return E_OUTOFMEMORY;
1620 
1621  size_t path_len = GetModuleFileNameW(inst, path, MAX_PATH);
1622  if (!path_len)
1623  return HRESULT_FROM_WIN32(GetLastError());
1624 
1625  if (index_len)
1626  wcscat(path, lpszIndex);
1627 
1629  HRESULT hResult = LoadTypeLib(path, &typelib);
1630  if (FAILED(hResult))
1631  {
1632  WCHAR *ptr;
1633  for (ptr = path+path_len-1; ptr > path && *ptr != '\\' && *ptr != '.'; ptr--)
1634  ;
1635  if (*ptr != '.')
1636  ptr = (WCHAR*)path + path_len;
1637  wcscpy(ptr, L".tlb");
1638 
1639  hResult = LoadTypeLib(path, &typelib);
1640  }
1641 
1642  if (SUCCEEDED(hResult))
1643  {
1644  *pbstrPath = SysAllocString(path);
1645  if (!*pbstrPath)
1646  {
1647  typelib.Release();
1648  hResult = E_OUTOFMEMORY;
1649  }
1650  }
1651 
1652  if (FAILED(hResult))
1653  return hResult;
1654 
1655  *ppTypeLib = typelib.Detach();
1656  return S_OK;
1657 }
DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule, LPWSTR lpFilename, DWORD nSize)
Definition: loader.c:600
#define HRESULT_FROM_WIN32(x)
Definition: winerror.h:92
GLsizei const GLchar ** path
Definition: glext.h:7234
static ITypeLib * typelib
Definition: apps.c:108
DWORD WINAPI GetLastError(VOID)
Definition: except.c:1059
HRESULT WINAPI LoadTypeLib(const OLECHAR *szFile, ITypeLib **pptLib)
Definition: typelib.c:458
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
static PVOID ptr
Definition: dispmode.c:27
ULONG Release()
BSTR WINAPI SysAllocString(LPCOLESTR str)
Definition: oleaut.c:238
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:78
#define MAX_PATH
Definition: compat.h:26
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
static const WCHAR L[]
Definition: oid.c:1250
#define S_OK
Definition: intsafe.h:59
static DWORD path_len
Definition: batch.c:31
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define SUCCEEDED(hr)
Definition: intsafe.h:57

Referenced by AtlComModuleUnregisterServer(), and AtlRegisterTypeLib().

◆ AtlRegisterClassCategoriesHelper()

HRESULT WINAPI ATL::AtlRegisterClassCategoriesHelper ( REFCLSID  clsid,
const _ATL_CATMAP_ENTRY catmap,
BOOL  reg 
)
inline

Definition at line 1672 of file atlbase.h.

1673 {
1674  if (!catmap)
1675  return S_OK;
1676 
1678 
1679  HRESULT hResult = CoCreateInstance(CLSID_StdComponentCategoriesMgr, NULL, CLSCTX_INPROC_SERVER, IID_ICatRegister, (void**)&catreg);
1680  if (FAILED(hResult))
1681  return hResult;
1682 
1683  for (const _ATL_CATMAP_ENTRY *iter = catmap; iter->iType != _ATL_CATMAP_ENTRY_END; iter++)
1684  {
1685  CATID catid = *iter->pcatid;
1686 
1687  if (iter->iType == _ATL_CATMAP_ENTRY_IMPLEMENTED)
1688  {
1689  if (reg)
1690  hResult = catreg->RegisterClassImplCategories(clsid, 1, &catid);
1691  else
1693  }
1694  else
1695  {
1696  if (reg)
1697  hResult = catreg->RegisterClassReqCategories(clsid, 1, &catid);
1698  else
1700  }
1701  if (FAILED(hResult))
1702  return hResult;
1703  }
1704 
1705  if (!reg)
1706  {
1707  WCHAR reg_path[256] = L"CLSID\\";
1708 
1709  StringFromGUID2(clsid, reg_path + wcslen(reg_path), 64);
1710  wcscat(reg_path, L"\\");
1711  WCHAR* ptr = reg_path + wcslen(reg_path);
1712 
1713  wcscpy(ptr, L"Implemented Categories");
1714  RegDeleteKeyW(HKEY_CLASSES_ROOT, reg_path);
1715 
1716  wcscpy(ptr, L"Required Categories");
1717  RegDeleteKeyW(HKEY_CLASSES_ROOT, reg_path);
1718  }
1719 
1720  return hResult;
1721 }
HRESULT RegisterClassReqCategories([in] REFCLSID rclsid, [in] ULONG cCategories, [in, size_is(cCategories)] CATID rgcatid[])
LONG WINAPI RegDeleteKeyW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey)
Definition: reg.c:1237
HRESULT UnRegisterClassImplCategories([in] REFCLSID rclsid, [in] ULONG cCategories, [in, size_is(cCategories)] CATID rgcatid[])
static ICatRegister * catreg
Definition: atl.c:40
static PVOID ptr
Definition: dispmode.c:27
smooth NULL
Definition: ftsmooth.c:416
GUID catid
Definition: msctf.idl:608
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:78
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
Definition: compobj.c:2434
HRESULT RegisterClassImplCategories([in] REFCLSID rclsid, [in] ULONG cCategories, [in, size_is(cCategories)] CATID rgcatid[])
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
REFCLSID clsid
Definition: msctf.c:82
int iType
Definition: atlbase.h:64
static const WCHAR L[]
Definition: oid.c:1250
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
Definition: compobj.c:3325
#define S_OK
Definition: intsafe.h:59
#define _ATL_CATMAP_ENTRY_END
Definition: atlbase.h:68
#define _ATL_CATMAP_ENTRY_IMPLEMENTED
Definition: atlbase.h:69
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
static int reg
Definition: i386-dis.c:1275
HRESULT UnRegisterClassReqCategories([in] REFCLSID rclsid, [in] ULONG cCategories, [in, size_is(cCategories)] CATID rgcatid[])
Definition: atlbase.h:62
#define HKEY_CLASSES_ROOT
Definition: winreg.h:10
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)

Referenced by AtlComModuleRegisterServer(), and AtlComModuleUnregisterServer().

◆ AtlRegisterTypeLib()

HRESULT WINAPI ATL::AtlRegisterTypeLib ( HINSTANCE  inst,
const WCHAR index 
)
inline

Definition at line 1660 of file atlbase.h.

1661 {
1662  CComBSTR path;
1664  HRESULT hResult = AtlLoadTypeLib(inst, index, &path, &typelib);
1665  if (FAILED(hResult))
1666  return hResult;
1667 
1668  return RegisterTypeLib(typelib, path, NULL); /* FIXME: pass help directory */
1669 }
GLsizei const GLchar ** path
Definition: glext.h:7234
static ITypeLib * typelib
Definition: apps.c:108
smooth NULL
Definition: ftsmooth.c:416
HRESULT WINAPI RegisterTypeLib(ITypeLib *ptlib, const WCHAR *szFullPath, const WCHAR *szHelpDir)
Definition: typelib.c:656
GLuint index
Definition: glext.h:6031
HRESULT WINAPI AtlLoadTypeLib(HINSTANCE, LPCOLESTR, BSTR *, ITypeLib **)
Definition: atl.c:341
LONG HRESULT
Definition: typedefs.h:78

Referenced by AtlComModuleRegisterServer().

◆ AtlThrowImp()

void ATL::AtlThrowImp ( HRESULT  hr)
inline

Definition at line 18 of file atlexcept.h.

19 {
20 #ifdef ATLTRACE
21  ATLTRACE(hr);
22 #endif
23 
24 #ifdef _ATL_NO_EXCEPTIONS
25 
26  ATLASSERT(false);
27 
31  );
32 
33 #else
34 
35  // FIXME: This is horribly wrong, we should implement CException!
36  throw;
37 
38 #endif
39 
40 }
HRESULT hr
Definition: shlfolder.c:183
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
#define EXCEPTION_NONCONTINUABLE
Definition: rtltypes.h:150
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
smooth NULL
Definition: ftsmooth.c:416
VOID WINAPI RaiseException(IN DWORD dwExceptionCode, IN DWORD dwExceptionFlags, IN DWORD nNumberOfArguments, IN CONST ULONG_PTR *lpArguments OPTIONAL)
Definition: except.c:693
#define STATUS_NO_MEMORY
Definition: ntstatus.h:246
#define EXCEPTION_ILLEGAL_INSTRUCTION
Definition: winbase.h:324

Referenced by ATL::CAtlList< CAvailableApplicationInfo * >::GetFreeNode().

◆ AtlUnadvise()

HRESULT __stdcall ATL::AtlUnadvise ( IUnknown pUnkCP,
const IID iid,
DWORD  dw 
)
inline

Definition at line 1487 of file atlbase.h.

1488 {
1490  CComPtr<IConnectionPoint> connectionPoint;
1491  HRESULT hResult;
1492 
1493  if (pUnkCP == NULL)
1494  return E_INVALIDARG;
1495  hResult = pUnkCP->QueryInterface(IID_IConnectionPointContainer, (void **)&container);
1496  if (FAILED(hResult))
1497  return hResult;
1498  hResult = container->FindConnectionPoint(iid, &connectionPoint);
1499  if (FAILED(hResult))
1500  return hResult;
1501  return connectionPoint->Unadvise(dw);
1502 }
const GUID IID_IConnectionPointContainer
struct container container
REFIID LPVOID DWORD_PTR dw
Definition: atlbase.h:40
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
LONG HRESULT
Definition: typedefs.h:78
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)

◆ AtlWinModuleAddCreateWndData()

void __stdcall ATL::AtlWinModuleAddCreateWndData ( _ATL_WIN_MODULE pWinModule,
_AtlCreateWndData pData,
void pObject 
)
inline

Definition at line 1569 of file atlbase.h.

1570 {
1572 
1573  ATLASSERT(pWinModule != NULL);
1574  ATLASSERT(pObject != NULL);
1575 
1576  pData->m_pThis = pObject;
1577  pData->m_dwThreadID = ::GetCurrentThreadId();
1578  pData->m_pNext = pWinModule->m_pCreateWndList;
1579  pWinModule->m_pCreateWndList = pData;
1580 }
rwlock_t lock
Definition: tcpcore.h:1163
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
smooth NULL
Definition: ftsmooth.c:416
DWORD WINAPI GetCurrentThreadId(VOID)
Definition: thread.c:458
_AtlCreateWndData * m_pCreateWndList
Definition: atlbase.h:202
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1827

Referenced by ATL::CAtlWinModule::AddCreateWndData().

◆ AtlWinModuleExtractCreateWndData()

void *__stdcall ATL::AtlWinModuleExtractCreateWndData ( _ATL_WIN_MODULE pWinModule)
inline

Definition at line 1582 of file atlbase.h.

1583 {
1585  void *result;
1586  _AtlCreateWndData *currentEntry;
1587  _AtlCreateWndData **previousLink;
1588  DWORD threadID;
1589 
1590  ATLASSERT(pWinModule != NULL);
1591 
1592  result = NULL;
1593  threadID = GetCurrentThreadId();
1594  currentEntry = pWinModule->m_pCreateWndList;
1595  previousLink = &pWinModule->m_pCreateWndList;
1596  while (currentEntry != NULL)
1597  {
1598  if (currentEntry->m_dwThreadID == threadID)
1599  {
1600  *previousLink = currentEntry->m_pNext;
1601  result = currentEntry->m_pThis;
1602  break;
1603  }
1604  previousLink = &currentEntry->m_pNext;
1605  currentEntry = currentEntry->m_pNext;
1606  }
1607  return result;
1608 }
_AtlCreateWndData * m_pNext
Definition: atlbase.h:151
rwlock_t lock
Definition: tcpcore.h:1163
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
smooth NULL
Definition: ftsmooth.c:416
DWORD WINAPI GetCurrentThreadId(VOID)
Definition: thread.c:458
unsigned long DWORD
Definition: ntddk_ex.h:95
_AtlCreateWndData * m_pCreateWndList
Definition: atlbase.h:202
GLuint64EXT * result
Definition: glext.h:11304

Referenced by ATL::CAtlWinModule::ExtractCreateWndData().

◆ AtlWinModuleInit()

HRESULT __stdcall ATL::AtlWinModuleInit ( _ATL_WIN_MODULE pWinModule)
inline

Definition at line 1553 of file atlbase.h.

1554 {
1555  if (pWinModule == NULL)
1556  return E_INVALIDARG;
1557  pWinModule->m_pCreateWndList = NULL;
1558  return pWinModule->m_csWindowCreate.Init();
1559 }
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
_AtlCreateWndData * m_pCreateWndList
Definition: atlbase.h:202

Referenced by ATL::CAtlWinModule::CAtlWinModule().

◆ AtlWinModuleTerm()

HRESULT __stdcall ATL::AtlWinModuleTerm ( _ATL_WIN_MODULE pWinModule,
HINSTANCE  hInst 
)
inline

Definition at line 1561 of file atlbase.h.

1562 {
1563  if (pWinModule == NULL)
1564  return E_INVALIDARG;
1565  pWinModule->m_csWindowCreate.Term();
1566  return S_OK;
1567 }
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
#define E_INVALIDARG
Definition: ddrawi.h:101
smooth NULL
Definition: ftsmooth.c:416
#define S_OK
Definition: intsafe.h:59

Referenced by ATL::CAtlWinModule::Term().

◆ HRESULT()

typedef ATL::HRESULT ( WINAPI  _ATL_CREATORFUNC)

◆ InlineIsEqualUnknown()

BOOL WINAPI ATL::InlineIsEqualUnknown ( REFGUID  rguid1)
inline

Definition at line 324 of file atlbase.h.

325 {
326  return (
327  ((unsigned long *)&rguid1)[0] == 0 &&
328  ((unsigned long *)&rguid1)[1] == 0 &&
329  ((unsigned long *)&rguid1)[2] == 0x000000C0 &&
330  ((unsigned long *)&rguid1)[3] == 0x46000000);
331 }

Referenced by ATL::IConnectionPointImpl< CFindFolder, &DIID_DSearchCommandEvents >::_LocCPQueryInterface(), AtlInternalQueryInterface(), and ATL::CComClassFactory::CreateInstance().

◆ LPCTSTR()

typedef ATL::LPCTSTR ( WINAPI  _ATL_DESCRIPTIONFUNC)

◆ void()

typedef ATL::void ( __stdcall  _ATL_TERMFUNC)