/Fx (Eingefügten Code zusammenführen)
Aktualisiert: November 2007
Erstellt eine Kopie jeder Quelldatei, wobei der gesamte eingefügte Code in die Quellcode eingebunden wird.
/Fx
Hinweise
Zur Unterscheidung einer zusammengeführten Quelldatei von der ursprünglichen Quelldatei fügt /Fx zwischen dem Dateinamen und der Dateierweiterung die Erweiterung .mrg ein. So wird beispielsweise aus der Datei MyCode.cpp, die attributierten Code enthält und mit /Fx erstellt wurde, die Datei MyCode.mrg.cpp erstellt, 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 über ein Attribut eingefügter Code wie folgt begrenzt:
//+++ Start Injected Code
...
//--- End Injected Code
Das no_injected_text-Attribut wird in einer MRG-Datei eingebettet, sodass die MRG-Datei kompiliert ohne ein erneutes Einfügen von Text kompiliert werden kann.
Beachten Sie, dass die MRG-Quelldatei als Darstellung des vom Compiler eingefügten Quellcodes gedacht ist. Es ist möglich, dass die MRG-Datei nicht genau wie die ursprüngliche Quelldatei kompiliert oder ausgeführt wird.
Makros werden in der MRG-Datei nicht erweitert.
Wenn Ihr Programm eine Headerdatei enthält, die eingefügten Code verwendet, generiert /Fx eine Datei mit der Erweiterung .mrg.h für diesen Header. /Fx fügt include-Dateien nicht ein, wenn diese keinen eingefügten Code verwenden.
So legen Sie diese Compileroption in der Visual Studio-Entwicklungsumgebung fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Ausführliche Informationen finden Sie unter Gewusst wie: Öffnen von Projekteigenschaftenseiten.
Klicken Sie auf den Ordner C/C++.
Klicken Sie auf die Eigenschaftenseite Ausgabedateien.
Ändern Sie die Eigenschaft Quelle mit Attributen erweitern.
So legen Sie diese Compileroption programmgesteuert fest
- Siehe ExpandAttributedSource.