Visual C++. Описание стандартных классов - AFX_EXTENSION_MODULE
ОГЛАВЛЕНИЕ
Страница 227 из 238
Структуры
AFX_EXTENSION_MODULE
struct AFX_EXTENSION_MODULE
{
BOOL bInitialized;
HMODULE hModule;
HMODULE hResource;
CRuntimeClass* pFirstSharedClass;
COleObjectFactory* pFirstSharedFactory;
};
Переменные
- bInitialized - имеет значение TRUE, если модуль библиотеки динамической компоновки инициализирован функцией AfxInitExtensionModule.
- hModule - дескриптор модуля библиотеки динамической компоновки.
- hResource - дескриптор пользовательского модуля ресурсов библиотеки динамической компоновки.
- pFirstSharedClass - указатель на объект структуры CRuntimeClass, содержащий информацию о первом классе данного модуля библиотеки динамической компоновки. Используется для инициализации списка классов.
- pFirstSharedFactory - указатель на первую фабрику объектов библиотеки динамической компоновки (объект COleObjectFactory).
Описание
Объект структуры AFX_EXTENSION_MODULE используется при инициализации библиотеки расширения MFC для хранения состояния модуля этой библиотеки. Он хранит копию состояния модуля библиотеки расширения MFC, включая копии объектов классов, инициализированных данной библиотекой в процессе вызова статических конструкторов объектов перед вызовом функции DllMain. В функции DllMain библиотеки расширения MFC необходимо произвести две операции: вызвать функцию AfxInitExtensionModule и проверить возвращаемое ею значение;создать объект класса CDynLinkLibrary, если библиотека динамической компоновки экспортирует объекты CRuntimeClass или имеет собственные пользовательские ресурсы.