Visual c++ 请解释如何使用AFX_扩展_模块结构
更具体地说,为什么将structVisual c++ 请解释如何使用AFX_扩展_模块结构,visual-c++,mfc,Visual C++,Mfc,更具体地说,为什么将structAFX_扩展_模块用作 “静态AFX_扩展_模块NVC_MFC_DLLDLL={NULL,NULL};” 当它被定义为 struct AFX_EXTENSION_MODULE{ BOOL bInitialized; HMODULE hModule; HMODULE hResource; CRuntimeClass* pFirstSharedClass; COleObjectFactory* pFirstSharedFacto
AFX_扩展_模块
用作
“静态AFX_扩展_模块NVC_MFC_DLLDLL={NULL,NULL};”
当它被定义为
struct AFX_EXTENSION_MODULE{
BOOL bInitialized;
HMODULE hModule;
HMODULE hResource;
CRuntimeClass* pFirstSharedClass;
COleObjectFactory* pFirstSharedFactory;
};
{NULL,NULL}
中的两个NULL
代表什么?此扩展模块结构包含在加载到应用程序中的所有扩展模块(在文档中主要称为扩展DLL)的列表中。MFC使用此列表查找要序列化的类名,并查找不在主模块中的资源
该结构由AfxInitExtensionModule填充
通过创建CDynLinkLibrary对象,扩展模块包含在DLL链中。这通常是在调用AfxInitExtensionModule之后完成的
您可以在技术说明33和58中找到更多关于扩展模块/DLL的信息。它肯定是从早期MFC版本盲目复制/粘贴的。这一点都不重要,移除初始值设定项可以让你感觉更好。