Détails de la prise en charge ATL ajoutée par l'Assistant ATL
Si vous ajoutez la prise en charge ATL à un exécutable MFC ou à une DLL, Visual C++ apporte les modifications suivantes au projet MFC existant (dans cet exemple, le projet est appelé MFCEXE) :
Deux nouveaux fichiers (un fichier .idl et un fichier .rgs, utilisés pour inscrire le serveur) sont ajoutés.
Dans l'en-tête de l'application principale et dans les fichiers d'implémentation (Mfcexe.h et Mfcexe.cpp), une nouvelle classe (dérivée de CAtlMFCModule) est ajoutée. Outre la nouvelle classe, du code est ajouté à InitInstance pour l'inscription. Du code est également ajouté à la fonction ExitInstance pour révoquer l'objet de classe. Enfin, dans le fichier d'en-tête, deux nouveaux fichiers d'en-tête (Initguid.h et Mfcexe_i.c) sont ajoutés au fichier d'implémentation, déclarant et initialisant les nouveaux identificateurs universels uniques (GUID, Globally Unique ID) pour la classe dérivée de CAtlMFCModule.
Pour inscrire correctement le serveur, une entrée correspondant au nouveau fichier .rgs est ajoutée au fichier de ressources du projet.
Remarques relatives aux projets DLL
Si vous ajoutez la prise en charge ATL à un projet DLL MFC, vous pouvez constater certaines différences. Du code est ajouté aux fonctions DLLRegisterServer et DLLUnregisterServer pour l'inscription et la désinscription de la DLL. Du code est également ajouté à DllCanUnloadNow et à DllGetClassObject.
Voir aussi
Tâches
Ajout de la prise en charge ATL à votre projet MFC
Substitution d'une fonction virtuelle
Référence
Parcours de la structure de classe