ReactOS  0.4.15-dev-3723-g8d70159
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 76 of file atlbase.h.

◆ _ATL_COM_MODULE

Definition at line 163 of file atlbase.h.

◆ _ATL_MODULE

Definition at line 135 of file atlbase.h.

◆ _ATL_OBJMAP_ENTRY

Definition at line 117 of file atlbase.h.

◆ _ATL_WIN_MODULE

Definition at line 174 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 394 of file atlbase.h.

◆ CComObjectThreadModel

Definition at line 393 of file atlbase.h.

◆ CContainedWindow

Definition at line 1862 of file atlwin.h.

◆ CControlWinTraits

◆ CFrameWinTraits

◆ CMDIChildWinTraits

◆ CPath

Definition at line 393 of file atlpath.h.

◆ CPathA

Definition at line 394 of file atlpath.h.

◆ CPathW

Definition at line 395 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 63 of file atlwin.h.

◆ dw

Definition at line 137 of file atlbase.h.

◆ ppv

typedef REFIID LPVOID * ATL::ppv

Definition at line 74 of file atlbase.h.

◆ riid

typedef REFIID ATL::riid

Definition at line 74 of file atlbase.h.

Enumeration Type Documentation

◆ CComEnumFlags

Enumerator
AtlFlagNoCopy 
AtlFlagTakeOwnership 
AtlFlagCopy 

Definition at line 847 of file atlcom.h.

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

Function Documentation

◆ __declspec()

ATL::__declspec ( selectany  ) = NULL

Definition at line 526 of file atlbase.h.

526 {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:109
#define CP_THREAD_ACP
Definition: winnls.h:233

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
__wchar_t WCHAR
Definition: xmlstorage.h:180
unsigned int UINT
Definition: ndis.h:50
#define NULL
Definition: types.h:112
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 1476 of file atlbase.h.

1477 {
1479  CComPtr<IConnectionPoint> connectionPoint;
1480  HRESULT hResult;
1481 
1482  if (pUnkCP == NULL)
1483  return E_INVALIDARG;
1484  hResult = pUnkCP->QueryInterface(IID_IConnectionPointContainer, (void **)&container);
1485  if (FAILED(hResult))
1486  return hResult;
1487  hResult = container->FindConnectionPoint(iid, &connectionPoint);
1488  if (FAILED(hResult))
1489  return hResult;
1490  return connectionPoint->Advise(pUnk, pdw);
1491 }
const GUID IID_IConnectionPointContainer
struct container container
#define E_INVALIDARG
Definition: ddrawi.h:101
LONG HRESULT
Definition: typedefs.h:79
#define NULL
Definition: types.h:112
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 1813 of file atlbase.h.

1814 {
1815  _ATL_OBJMAP_ENTRY **iter;
1816  IUnknown* unk = NULL;
1817  HRESULT hr;
1818 
1819  if (!module)
1820  return E_INVALIDARG;
1821 
1822  for (iter = module->m_ppAutoObjMapFirst; iter < module->m_ppAutoObjMapLast; iter++)
1823  {
1824  if (!(*iter)->pfnGetClassObject)
1825  continue;
1826 
1827  hr = (*iter)->pfnGetClassObject((void*)(*iter)->pfnCreateInstance, IID_IUnknown, (void**)&unk);
1828  if (FAILED(hr))
1829  return hr;
1830 
1831  hr = CoRegisterClassObject(*(*iter)->pclsid, unk, context, flags, &(*iter)->dwRegister);
1832  unk->Release();
1833  if (FAILED(hr))
1834  return hr;
1835  }
1836 
1837  return S_OK;
1838 }
HRESULT hr
Definition: shlfolder.c:183
Definition: http.c:7251
#define E_INVALIDARG
Definition: ddrawi.h:101
LONG HRESULT
Definition: typedefs.h:79
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:52
#define NULL
Definition: types.h:112

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

◆ AtlComModuleRegisterServer()

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

Definition at line 1731 of file atlbase.h.

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

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

◆ AtlComModuleRevokeClassObjects()

HRESULT WINAPI ATL::AtlComModuleRevokeClassObjects ( _ATL_COM_MODULE module)
inline

Definition at line 1842 of file atlbase.h.

1843 {
1844  _ATL_OBJMAP_ENTRY **iter;
1845  HRESULT hr;
1846 
1847  if (!module)
1848  return E_INVALIDARG;
1849 
1850  for (iter = module->m_ppAutoObjMapFirst; iter < module->m_ppAutoObjMapLast; iter++)
1851  {
1852  hr = CoRevokeClassObject((*iter)->dwRegister);
1853  if (FAILED(hr))
1854  return hr;
1855  }
1856 
1857  return S_OK;
1858 }
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:79
#define S_OK
Definition: intsafe.h:52

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

◆ AtlComModuleUnregisterServer()

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

Definition at line 1765 of file atlbase.h.

1766 {
1767  HRESULT hResult = S_OK;
1768 
1769  for (_ATL_OBJMAP_ENTRY **iter = mod->m_ppAutoObjMapFirst; iter < mod->m_ppAutoObjMapLast; iter++)
1770  {
1771  if (!*iter)
1772  continue;
1773  _ATL_OBJMAP_ENTRY* entry = *iter;
1774  if (clsid && !IsEqualCLSID(*entry->pclsid, *clsid))
1775  continue;
1776 
1777  const _ATL_CATMAP_ENTRY *catmap = entry->pfnGetCategoryMap();
1778  if (catmap)
1779  {
1780  hResult = AtlRegisterClassCategoriesHelper(*entry->pclsid, catmap, FALSE);
1781  if (FAILED(hResult))
1782  return hResult;
1783  }
1784 
1785  hResult = entry->pfnUpdateRegistry(FALSE);
1786  if (FAILED(hResult))
1787  return hResult;
1788  }
1789 
1790  if (bUnRegTypeLib)
1791  {
1793  TLIBATTR *attr;
1794  CComBSTR path;
1795 
1796  hResult = AtlLoadTypeLib(mod->m_hInstTypeLib, NULL, &path, &typelib);
1797  if (FAILED(hResult))
1798  return hResult;
1799 
1800  hResult = typelib->GetLibAttr(&attr);
1801  if (SUCCEEDED(hResult))
1802  {
1803  hResult = UnRegisterTypeLib(attr->guid, attr->wMajorVerNum, attr->wMinorVerNum, attr->lcid, attr->syskind);
1805  }
1806  }
1807 
1808  return hResult;
1809 }
GLsizei const GLchar ** path
Definition: glext.h:7234
static ITypeLib * typelib
Definition: apps.c:108
#define FALSE
Definition: types.h:117
if SUCCEEDED(hr)
HRESULT WINAPI AtlLoadTypeLib(HINSTANCE, LPCOLESTR, BSTR *, ITypeLib **)
Definition: atl.c:341
HRESULT GetLibAttr([out] TLIBATTR **ppTLibAttr)
LONG HRESULT
Definition: typedefs.h:79
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:52
HRESULT WINAPI AtlRegisterClassCategoriesHelper(REFCLSID, const struct _ATL_CATMAP_ENTRY *, BOOL)
Definition: atl.c:747
#define NULL
Definition: types.h:112
void ReleaseTLibAttr([in] TLIBATTR *pTLibAttr)
Definition: atlbase.h:63
#define IsEqualCLSID(rclsid1, rclsid2)
Definition: guiddef.h:96
static int mod
Definition: i386-dis.c:1281

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
HINSTANCE hInst
Definition: dxdiag.c:13
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
#define NULL
Definition: types.h:112

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
#define RT_STRING
Definition: pedump.c:368
#define NULL
Definition: types.h:112
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
HRSRC WINAPI FindResourceExW(HMODULE hModule, LPCWSTR type, LPCWSTR name, WORD lang)
Definition: res.c:164
#define RT_STRING
Definition: pedump.c:368
#define NULL
Definition: types.h:112
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:1040
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 1510 of file atlbase.h.

1511 {
1512  int i;
1513  IUnknown *resultInterface;
1514  HRESULT hResult;
1515 
1516  ATLASSERT(pThis != NULL && pEntries != NULL);
1517  if (pThis == NULL || pEntries == NULL)
1518  return E_INVALIDARG;
1519  ATLASSERT(ppvObject != NULL);
1520  if (ppvObject == NULL)
1521  return E_POINTER;
1522 
1523  if (InlineIsEqualUnknown(iid))
1524  {
1525  resultInterface = reinterpret_cast<IUnknown *>(reinterpret_cast<char *>(pThis) + pEntries[0].dw);
1526  *ppvObject = resultInterface;
1527  resultInterface->AddRef();
1528  return S_OK;
1529  }
1530 
1531  i = 0;
1532  while (pEntries[i].pFunc != 0)
1533  {
1534  if (pEntries[i].piid == NULL || InlineIsEqualGUID(iid, *pEntries[i].piid))
1535  {
1536  if (pEntries[i].pFunc == reinterpret_cast<_ATL_CREATORARGFUNC *>(1))
1537  {
1538  ATLASSERT(pEntries[i].piid != NULL);
1539  resultInterface = reinterpret_cast<IUnknown *>(reinterpret_cast<char *>(pThis) + pEntries[i].dw);
1540  *ppvObject = resultInterface;
1541  resultInterface->AddRef();
1542  return S_OK;
1543  }
1544  else
1545  {
1546  hResult = pEntries[i].pFunc(pThis, iid, ppvObject, 0);
1547  if (hResult == S_OK)
1548  return hResult;
1549  if (FAILED(hResult) && pEntries[i].piid != NULL)
1550  break;
1551  }
1552  }
1553  i++;
1554  }
1555  *ppvObject = NULL;
1556  return E_NOINTERFACE;
1557 }
#define E_NOINTERFACE
Definition: winerror.h:2364
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
REFIID LPVOID DWORD_PTR dw
Definition: atlbase.h:40
#define E_INVALIDARG
Definition: ddrawi.h:101
LONG HRESULT
Definition: typedefs.h:79
BOOL WINAPI InlineIsEqualUnknown(REFGUID rguid1)
Definition: atlbase.h:325
ULONG AddRef()
REFIID LPVOID * ppvObject
Definition: precomp.h:44
#define S_OK
Definition: intsafe.h:52
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
#define NULL
Definition: types.h:112
_ATL_CREATORARGFUNC * pFunc
Definition: atlbase.h:145
#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 1617 of file atlbase.h.

1619 {
1620  size_t index_len = lpszIndex ? wcslen(lpszIndex) : 0;
1622  path.Allocate(MAX_PATH + index_len + wcslen(L".tlb"));
1623 
1624  if (!path)
1625  return E_OUTOFMEMORY;
1626 
1627  size_t path_len = GetModuleFileNameW(inst, path, MAX_PATH);
1628  if (!path_len)
1629  return HRESULT_FROM_WIN32(GetLastError());
1630 
1631  if (index_len)
1632  wcscat(path, lpszIndex);
1633 
1635  HRESULT hResult = LoadTypeLib(path, &typelib);
1636  if (FAILED(hResult))
1637  {
1638  WCHAR *ptr;
1639  for (ptr = path+path_len-1; ptr > path && *ptr != '\\' && *ptr != '.'; ptr--)
1640  ;
1641  if (*ptr != '.')
1642  ptr = (WCHAR*)path + path_len;
1643  wcscpy(ptr, L".tlb");
1644 
1645  hResult = LoadTypeLib(path, &typelib);
1646  }
1647 
1648  if (SUCCEEDED(hResult))
1649  {
1650  *pbstrPath = SysAllocString(path);
1651  if (!*pbstrPath)
1652  {
1653  typelib.Release();
1654  hResult = E_OUTOFMEMORY;
1655  }
1656  }
1657 
1658  if (FAILED(hResult))
1659  return hResult;
1660 
1661  *ppTypeLib = typelib.Detach();
1662  return S_OK;
1663 }
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:1040
HRESULT WINAPI LoadTypeLib(const OLECHAR *szFile, ITypeLib **pptLib)
Definition: typelib.c:458
#define L(x)
Definition: ntvdm.h:50
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
if SUCCEEDED(hr)
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:79
#define MAX_PATH
Definition: compat.h:34
_CRTIMP wchar_t *__cdecl wcscpy(_Out_writes_z_(_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
#define S_OK
Definition: intsafe.h:52
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)
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)

Referenced by AtlComModuleUnregisterServer(), and AtlRegisterTypeLib().

◆ AtlRegisterClassCategoriesHelper()

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

Definition at line 1678 of file atlbase.h.

1679 {
1680  if (!catmap)
1681  return S_OK;
1682 
1684 
1685  HRESULT hResult = CoCreateInstance(CLSID_StdComponentCategoriesMgr, NULL, CLSCTX_INPROC_SERVER, IID_ICatRegister, (void**)&catreg);
1686  if (FAILED(hResult))
1687  return hResult;
1688 
1689  for (const _ATL_CATMAP_ENTRY *iter = catmap; iter->iType != _ATL_CATMAP_ENTRY_END; iter++)
1690  {
1691  CATID catid = *iter->pcatid;
1692 
1693  if (iter->iType == _ATL_CATMAP_ENTRY_IMPLEMENTED)
1694  {
1695  if (reg)
1696  hResult = catreg->RegisterClassImplCategories(clsid, 1, &catid);
1697  else
1699  }
1700  else
1701  {
1702  if (reg)
1703  hResult = catreg->RegisterClassReqCategories(clsid, 1, &catid);
1704  else
1706  }
1707  if (FAILED(hResult))
1708  return hResult;
1709  }
1710 
1711  if (!reg)
1712  {
1713  WCHAR reg_path[256] = L"CLSID\\";
1714 
1715  StringFromGUID2(clsid, reg_path + wcslen(reg_path), 64);
1716  wcscat(reg_path, L"\\");
1717  WCHAR* ptr = reg_path + wcslen(reg_path);
1718 
1719  wcscpy(ptr, L"Implemented Categories");
1720  RegDeleteKeyW(HKEY_CLASSES_ROOT, reg_path);
1721 
1722  wcscpy(ptr, L"Required Categories");
1723  RegDeleteKeyW(HKEY_CLASSES_ROOT, reg_path);
1724  }
1725 
1726  return hResult;
1727 }
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[])
#define L(x)
Definition: ntvdm.h:50
static ICatRegister * catreg
Definition: atl.c:40
static PVOID ptr
Definition: dispmode.c:27
GUID catid
Definition: msctf.idl:608
__wchar_t WCHAR
Definition: xmlstorage.h:180
LONG HRESULT
Definition: typedefs.h:79
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
Definition: compobj.c:2434
static int reg
Definition: i386-dis.c:1283
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:65
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:52
#define _ATL_CATMAP_ENTRY_END
Definition: atlbase.h:69
#define _ATL_CATMAP_ENTRY_IMPLEMENTED
Definition: atlbase.h:70
_CRTIMP wchar_t *__cdecl wcscat(_Inout_updates_z_(_String_length_(_Dest)+_String_length_(_Source)+1) wchar_t *_Dest, _In_z_ const wchar_t *_Source)
#define NULL
Definition: types.h:112
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
HRESULT UnRegisterClassReqCategories([in] REFCLSID rclsid, [in] ULONG cCategories, [in, size_is(cCategories)] CATID rgcatid[])
Definition: atlbase.h:63
#define HKEY_CLASSES_ROOT
Definition: winreg.h:10

Referenced by AtlComModuleRegisterServer(), and AtlComModuleUnregisterServer().

◆ AtlRegisterTypeLib()

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

Definition at line 1666 of file atlbase.h.

1667 {
1668  CComBSTR path;
1670  HRESULT hResult = AtlLoadTypeLib(inst, index, &path, &typelib);
1671  if (FAILED(hResult))
1672  return hResult;
1673 
1674  return RegisterTypeLib(typelib, path, NULL); /* FIXME: pass help directory */
1675 }
GLsizei const GLchar ** path
Definition: glext.h:7234
static ITypeLib * typelib
Definition: apps.c:108
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:79
#define NULL
Definition: types.h:112

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:154
#define ATLTRACE(format,...)
Definition: atltrace.h:276
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
VOID WINAPI RaiseException(IN DWORD dwExceptionCode, IN DWORD dwExceptionFlags, IN DWORD nNumberOfArguments, IN CONST ULONG_PTR *lpArguments OPTIONAL)
Definition: except.c:700
#define STATUS_NO_MEMORY
Definition: ntstatus.h:260
#define NULL
Definition: types.h:112
#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 1493 of file atlbase.h.

1494 {
1496  CComPtr<IConnectionPoint> connectionPoint;
1497  HRESULT hResult;
1498 
1499  if (pUnkCP == NULL)
1500  return E_INVALIDARG;
1501  hResult = pUnkCP->QueryInterface(IID_IConnectionPointContainer, (void **)&container);
1502  if (FAILED(hResult))
1503  return hResult;
1504  hResult = container->FindConnectionPoint(iid, &connectionPoint);
1505  if (FAILED(hResult))
1506  return hResult;
1507  return connectionPoint->Unadvise(dw);
1508 }
const GUID IID_IConnectionPointContainer
struct container container
REFIID LPVOID DWORD_PTR dw
Definition: atlbase.h:40
#define E_INVALIDARG
Definition: ddrawi.h:101
LONG HRESULT
Definition: typedefs.h:79
#define NULL
Definition: types.h:112
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 1575 of file atlbase.h.

1576 {
1578 
1579  ATLASSERT(pWinModule != NULL);
1580  ATLASSERT(pObject != NULL);
1581 
1582  pData->m_pThis = pObject;
1583  pData->m_dwThreadID = ::GetCurrentThreadId();
1584  pData->m_pNext = pWinModule->m_pCreateWndList;
1585  pWinModule->m_pCreateWndList = pData;
1586 }
FxObject * pObject
rwlock_t lock
Definition: tcpcore.h:1163
#define ATLASSERT(x)
Definition: CComVariant.cpp:10
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
DWORD WINAPI GetCurrentThreadId(VOID)
Definition: thread.c:458
_AtlCreateWndData * m_pCreateWndList
Definition: atlbase.h:202
#define NULL
Definition: types.h:112
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 1588 of file atlbase.h.

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

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

◆ AtlWinModuleInit()

HRESULT __stdcall ATL::AtlWinModuleInit ( _ATL_WIN_MODULE pWinModule)
inline

Definition at line 1559 of file atlbase.h.

1560 {
1561  if (pWinModule == NULL)
1562  return E_INVALIDARG;
1563  pWinModule->m_pCreateWndList = NULL;
1564  return pWinModule->m_csWindowCreate.Init();
1565 }
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
#define E_INVALIDARG
Definition: ddrawi.h:101
_AtlCreateWndData * m_pCreateWndList
Definition: atlbase.h:202
#define NULL
Definition: types.h:112

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

◆ AtlWinModuleTerm()

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

Definition at line 1567 of file atlbase.h.

1568 {
1569  if (pWinModule == NULL)
1570  return E_INVALIDARG;
1571  pWinModule->m_csWindowCreate.Term();
1572  return S_OK;
1573 }
CComCriticalSection m_csWindowCreate
Definition: atlbase.h:201
#define E_INVALIDARG
Definition: ddrawi.h:101
#define S_OK
Definition: intsafe.h:52
#define NULL
Definition: types.h:112

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

◆ HRESULT()

typedef ATL::HRESULT ( WINAPI  _ATL_CREATORFUNC)

◆ InlineIsEqualUnknown()

BOOL WINAPI ATL::InlineIsEqualUnknown ( REFGUID  rguid1)
inline

Definition at line 325 of file atlbase.h.

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

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)