Gewusst wie: Kompilieren von MFC-Code und ATL-Code mit /clr

In diesem Thema wird erläutert, wie Vorhandene MFC- und ATL-Programme kompiliert werden, um die Common Language Runtime zu verwenden.

So kompilieren Sie eine ausführbare MFC- oder normale MFC-DLL mithilfe von /clr

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und klicken Sie anschließend auf Eigenschaften.

  2. Erweitern Sie im Dialogfeld "Projekteigenschaften" den Knoten neben "Konfigurationseigenschaften", und wählen Sie "Allgemein" aus. Legen Sie im rechten Bereich unter "Project-Standardwerte" die Unterstützung der Common Language Runtime auf den Support für Common Language Runtime (/clr) fest.

    Stellen Sie im selben Bereich sicher, dass die Verwendung von MFC auf " MFC" in einer freigegebenen DLL festgelegt ist.

  3. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Stellen Sie sicher, dass das Debuginformationsformat auf Die Programmdatenbank /Zi (nicht /ZI) festgelegt ist.

  4. Wählen Sie den Knoten " Codegenerierung " aus. Legen Sie "Minimale Neuerstellung aktivieren" auf "Nein" (/Gm-) fest. Legen Sie außerdem die Grundlegenden Laufzeitüberprüfungen auf "Standard" fest.

  5. Wählen Sie unter "Konfigurationseigenschaften" C/C++ und dann "Codegenerierung" aus. Stellen Sie sicher, dass die Laufzeitbibliothek entweder auf Multithreaded Debug DLL (/MDd) oder Multithreaded DLL (/MD) festgelegt ist.

  6. Fügen Sie in Stdafx.h die folgende Zeile hinzu.

    #using <System.Windows.Forms.dll>
    

So kompilieren Sie eine MFC-Erweiterungs-DLL mithilfe von /clr

  1. Führen Sie die Schritte unter "So kompilieren Sie eine ausführbare MFC- oder normale MFC-DLL mithilfe von /clr" aus.

  2. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++ , und wählen Sie "Vorkompilierte Header" aus. Legen Sie "Create/Use Precompiled Header " auf "Not using Precompiled Headers" fest.

    Alternativ klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf "Stdafx.cpp", und klicken Sie dann auf "Eigenschaften". Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Set Compile with Common Language Runtime support to No Common Language Runtime support.

  3. Klicken Sie für die Datei, die DllMain enthält, und alles, was sie aufruft, in Projektmappen-Explorer mit der rechten Maustaste auf die Datei, und klicken Sie dann auf Eigenschaften. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Legen Sie im rechten Bereich unter "Projektstandardeinstellungen" die Unterstützung für "Kompilieren mit Common Language Runtime" auf "Keine Unterstützung für Common Language Runtime" fest.

So kompilieren Sie eine AUSFÜHRBARE ATL-Datei mithilfe von /clr

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt, und klicken Sie dann auf Eigenschaften.

  2. Erweitern Sie im Dialogfeld "Projekteigenschaften" den Knoten neben "Konfigurationseigenschaften", und wählen Sie "Allgemein" aus. Legen Sie im rechten Bereich unter "Project-Standardwerte" die Unterstützung der Common Language Runtime auf den Support für Common Language Runtime (/clr) fest.

  3. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Stellen Sie sicher, dass das Debuginformationsformat auf Die Programmdatenbank /Zi (nicht /ZI) festgelegt ist.

  4. Wählen Sie den Knoten " Codegenerierung " aus. Legen Sie "Minimale Neuerstellung aktivieren" auf "Nein" (/Gm-) fest. Legen Sie außerdem die Grundlegenden Laufzeitüberprüfungen auf "Standard" fest.

  5. Wählen Sie unter "Konfigurationseigenschaften" C/C++ und dann "Codegenerierung" aus. Stellen Sie sicher, dass die Laufzeitbibliothek entweder auf Multithreaded Debug DLL (/MDd) oder Multithreaded DLL (/MD) festgelegt ist.

  6. Klicken Sie für jede VON MIDL generierte Datei (C-Dateien) mit der rechten Maustaste auf die Datei in Projektmappen-Explorer, und klicken Sie dann auf Eigenschaften. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Set Compile with Common Language Runtime support to No Common Language Runtime support.

So kompilieren Sie eine ATL-DLL mithilfe von /clr

  1. Führen Sie die Schritte im Abschnitt "So kompilieren Sie eine ATL-ausführbare Datei mithilfe von /clr" aus.

  2. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++ , und wählen Sie "Vorkompilierte Header" aus. Legen Sie "Create/Use Precompiled Header " auf "Not using Precompiled Headers" fest.

    Alternativ klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf "Stdafx.cpp", und klicken Sie dann auf "Eigenschaften". Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Set Compile with Common Language Runtime support to No Common Language Runtime support.

  3. Klicken Sie für die Datei, die DllMain enthält, und alles, was sie aufruft, in Projektmappen-Explorer mit der rechten Maustaste auf die Datei, und klicken Sie dann auf Eigenschaften. Erweitern Sie unter "Konfigurationseigenschaften" den Knoten neben C/C++, und wählen Sie "Allgemein" aus. Legen Sie im rechten Bereich unter "Projektstandardeinstellungen" die Unterstützung für "Kompilieren mit Common Language Runtime" auf "Keine Unterstützung für Common Language Runtime" fest.

Siehe auch

Gemischte (native und verwaltete) Assemblys