/Fx (Eingefügten Code zusammenführen)
Erzeugt eine Kopie jeder Quelldatei mit injiziertem Code, der in die Quelle eingefügt ist.
Syntax
/Fx
Hinweise
Damit eine zusammengeführte Quelldatei von einer unveränderten Quelldatei unterschieden werden kann, fügt /Fx die Erweiterung „.mrg“ zwischen dem Dateinamen und der Dateierweiterung ein. Eine Datei mit dem Namen „MeinCode.cpp“, die attribuierten Code enthält und mit /Fx erstellt wird, erzeugt eine Datei mit dem Namen „MyCode.mrg.cpp“, die den folgenden Code enthält:
//+++ Start Injected Code
[no_injected_text(true)]; // Suppress injected text, it has
// already been injected
#pragma warning(disable: 4543) // Suppress warnings about skipping
// injected text
#pragma warning(disable: 4199) // Suppress warnings from attribute
// providers
//--- End Injected Code
In einer MRG-Datei wird Code, der aufgrund eines Attributs injiziert wurde, wie folgt abgetrennt:
//+++ Start Injected Code
...
//--- End Injected Code
Das no_injected_text -Attribut wird in eine MRG-Datei eingebettet, was die Kompilierung der MRG-Datei ohne erneute Injizierung von Text ermöglicht.
Es sollte Ihnen bewusst sein, dass die MRG-Quelldatei als Darstellung des vom Compiler injizierten Quellcodes beabsichtigt ist. Die MRG-Datei lässt sich möglicherweise nicht genau wie die ursprüngliche Quelldatei kompilieren oder ausführen.
Makros werden in der MRG-Datei nicht erweitert.
Wenn Ihr Programm eine Headerdatei umfasst, die injizierten Code verwendet, erstellt /Fx eine „.mrg.h“-Datei für den betreffenden header. /Fx führt keine Includedateien zusammen, die keinen injizierten Code verwenden.
So legen Sie diese Compileroption in der Visual Studio-Entwicklungsumgebung fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).
Wählen Sie die Eigenschaftenseite Konfigurationseigenschaften>C/C++>Ausgabedateien aus.
Ändern Sie die Expand Attributed Source -Eigenschaft.
So legen Sie diese Compileroption programmgesteuert fest
- Siehe ExpandAttributedSource.
Siehe auch
Ausgabedatei (/F) Optionen
MSVC-Compileroptionen
Syntax für die MSVC-Compilerbefehlszeile