看Atl头文件的疑惑~

myseemydog 2012-10-12 10:14:38
atlcore.h中有这么一个声明,
extern CAtlBaseModule _AtlBaseModule;这个模块有应用程序的一些基本信息,是3.0中CComModule模块的分解类。
ATL源码都是头文件。所以、、这个CAtlBaseModule _AtlBaseModule的定义是在哪里、应该是在某个cpp中、

建立一个win32程序。包含ATL头文件
下面代码可以正常工作。
int WINAPI _tWinMain(__in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPWSTR lpCmdLine, __in int nShowCmd )
{
_AtlBaseModule.m_hInstResource = LoadLibrary( _T("shell32.dll") );
MSGBOXPARAMS mbp;
ZeroMemory( &mbp, sizeof( mbp ) );
mbp.cbSize = sizeof( mbp );
mbp.dwLanguageId = GetSystemDefaultLangID();
mbp.dwStyle = MB_USERICON;
mbp.hInstance = _AtlBaseModule.GetResourceInstance();
mbp.lpszCaption = _T("Hello");
mbp.lpszIcon = MAKEINTRESOURCE( 44 );
mbp.lpszText = _T("Hello, World!");
MessageBoxIndirect(&mbp);

FreeLibrary(_AtlBaseModule.m_hInstResource);
// MessageBox(NULL,_T("TEXT"),_T("HELLO"),MB_USERICON);
return 0;
}
_AtlBaseModule.m_hInstResource。。这里这个全局变量是在哪里定义的呢?直接就可以用了。我用vs直接查看定义。直接就跳到atlcore.h中的extern部分了。。求大大解答~
...全文
116 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
tcige 2012-10-12
  • 打赏
  • 举报
回复
atlbase.cpp

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧