Partager via


AFX_MANAGE_STATE

Appelez la macro pour protéger une fonction exportée dans un fichier .dll.

AFX_MANAGE_STATE(AFX_MODULE_STATE* pModuleState )

Paramètres

  • pModuleState
    Pointeur vers une structure AFX_MODULE_STATE.

Notes

Lorsque la macro est appelée, pModuleState est l'état du module efficace pour le reste de l'étendue contenante immédiate. Lorsque vous laissez l'étendue, l'état du module efficace précédent est automatiquement restaurée.

La structure AFX_MODULE_STATE contient des données agrégées pour le module, c'est-à-dire., la partie de l'état du module qui sont envoyées ou dépilé.

Par défaut, MFC utilise le handle de ressource d'application principale pour charger le modèle de ressources. Si vous avez une fonction exportée dans une DLL, tel qu'un permettant de lancer une boîte de dialogue dans la DLL, le modèle est enregistré réellement dans le module DLL. Vous devez basculer l'état du module pour la poignée droite est utilisé. Vous pouvez le faire en ajoutant le code suivant au début de la fonction :

AFX_MANAGE_STATE(AfxGetStaticModuleState( ));

Cela permute l'état du module en cours avec l'état retourné par AfxGetStaticModuleState jusqu'à la fin de l'étendue actuelle.

Pour plus d'informations sur les états du module et MFC, consultez « gestion des données d'état des modules de MFC » dans Créer de nouveaux documents, windows, et vues et Note technique 58.

Notes

Lorsque MFC crée un contexte de l'activation d'un assembly, il utilise AfxWinInit pour créer le contexte et AFX_MANAGE_STATE pour l'activer et désactiver.Remarquez également que AFX_MANAGE_STATE est activé pour les bibliothèques MFC statiques, ainsi que les DLL MFC, pour permettre au code de MFC de s'exécuter dans le contexte d'activation approprié sélectionné par la DLL utilisateur.Pour plus d'informations, consultez Prise en charge des contextes d'activation dans l'état du module MFC.

Configuration requise

En-tête : afxstat_.h

Voir aussi

Référence

AfxGetStaticModuleState

Concepts

macro MFC et Globals