Freigeben über


Details zur ATL-Unterstützung, die vom ATL-Assistenten hinzugefügt wird

Wenn Sie ATL-Unterstützung zu einer vorhandenen ausführbaren MFC- oder DLL-Datei hinzufügen, fügt Visual Studio standardmäßig eine Headerdatei namens "framework.h " hinzu, die Direktiven enthält #include und #define vorprozessoriert, um die Verwendung von ATL in Ihrem Projekt zu ermöglichen. Es werden keine zusätzlichen Dateien oder Klassen hinzugefügt, wie in früheren Versionen von Visual Studio.

Wenn Sie ATL-Unterstützung zu einer vorhandenen ausführbaren MFC- oder DLL-Datei hinzufügen, nimmt Visual Studio die folgenden Änderungen am vorhandenen MFC-Projekt vor (in diesem Beispiel wird das Projekt aufgerufen MFCEXE):

  • Zwei neue Dateien (eine IDL-Datei und eine RGS-Datei, die zum Registrieren des Servers verwendet wird) werden hinzugefügt.

  • In den Standard Anwendungsheader- und Implementierungsdateien (Mfcexe.h und Mfcexe.cpp) wird eine neue Klasse (abgeleitet von CAtlMFCModule) hinzugefügt. Zusätzlich zur neuen Klasse wird code zur Registrierung hinzugefügt InitInstance . Code wird auch der ExitInstance Funktion zum Widerrufen des Klassenobjekts hinzugefügt. In der Headerdatei sind schließlich zwei neue Headerdateien (Initguid.h und Mfcexe_i.c) in der Implementierungsdatei enthalten, und die neuen GUIDs für die CAtlMFCModuleabgeleitete Klasse deklarieren und initialisieren.

  • Um den Server ordnungsgemäß zu registrieren, wird der Ressourcendatei des Projekts ein Eintrag für die neue RGS-Datei hinzugefügt.

Hinweise für DLL-Projekte

Wenn Sie ATL-Unterstützung zu einem MFC DLL-Projekt hinzufügen, werden einige Unterschiede angezeigt. Code wird den DLLRegisterServer Funktionen zum Registrieren und DLLUnregisterServer Aufheben der Registrierung der DLL hinzugefügt. Code wird auch dllCanUnloadNow und DllGetClassObject hinzugefügt.

Siehe auch

ATL-Unterstützung in einem MFC-Projekt
Hinzufügen neuer Funktionen mit Code-Assistenten
Hinzufügen einer Klasse
Hinzufügen einer Memberfunktion
Adding a Member Variable (Hinzufügen einer Membervariablen)
Overriding a Virtual Function (Überschreiben einer virtuellen Funktion)
MFC Message Handler (MFC-Meldungshandler)
Navigating the Class Structure (Navigieren in der Klassenstruktur)