Befehlszeilenfehler: Ungültige Makrodefinition



  • Hallo zusammen,

    ich habe das Problem dass ich den Fehlercode "E0992" habe aber wenn ich drauf klicke navigiert er mich auf ein anderen Codefehler im Internet. Und im Internet steht zu dem Fehlercode auch nichts. Könntet ihr mir dabei helfen wieso und weshalb er bei "stdafx.h" den fehler anzeigt habe ich versehentlich etwas umgestellt? Ich vermute aber dass es nicht an stdafx.h liegt sondern an den Einstellungen. Weil egal welches include ich in die erste Zeile rein stelle zeigt er mir den selber Fehlercode an auch wenn in die erste Zeile nicht reingeschrieben wird.

    MfG



  • Du hast vermutlich in der Befehlszeile (Compiler-Switches) eine ungültige Makrodefinition gemacht.
    Also irgend einen Quatsch mit /DMY_MACRO=substitution.



  • @hustbaer wo kann ich diese auffinden vielen dank im voraus 🙂



  • Du schreibst in einem anderen Thread daß Du Visual Studio 2019 verwendest. stdafx.h ist ein vorkompilierter Header, eine Technik um die Codeerzeugung zu beschleunigen. Seit VS 2019 heißt der aber pch.h. Also frage ich mich, was Du gemacht hast. Wenn Du ein Projekt mit VS 2019 angelegt hast sollte da nirgends stdafx.h auftauchen. Also: Was hast Du genau gemacht? Zeig auch den Code und die Fehlermeldungen (Copy & Paste!, 1:1).



  • @avci sagte in Befehlszeilenfehler: Ungültige Makrodefinition:

    @hustbaer wo kann ich diese auffinden vielen dank im voraus 🙂

    In den Projekteinstellungen, unter

    • Configuration Properties -- C/C++ -- Preprocessor -- Preprocessor Definitions
      oder
    • Configuration Properties -- C/C++ -- Command Line -- Additional Options

    Bzw. falls du z.B. CMake verwendest, dann in einem deiner CMake files.



  • @Swordfish @hustbaer der fehler tacuht auch auf wenn kein Code drin steht deswegen ist der code glaube ich irrerelevant

    Das hier ist die Fehlermeldung:
    Schweregrad Code Beschreibung Projekt Datei Zeile Unterdrückungszustand
    Fehler (aktiv) E0992 Befehlszeilenfehler: Ungültige Makrodefinition: C:\Program Files\QUANCOM\qlib32\inc ConsoleApplication1 C:\Users\PDV\source\repos\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.cpp 1

    Ich codiere einen Relais und laut Hersteller soll ich bei dem Präprozessor ertwas ergänzen und beim Linker ein zusätzlichen Bibliotheksverzeichnis:

    Laut Hersteller:
    // (1) Add statement #include "qlib.h" to your source file.// (2) Add in the Dialog Menu->Project->Settings->C/C++->Preprocessor // "(QLIBINC)"totheadditionalincludedirectoriesentry.//(3)AddintheDialogMenu>Project>Settings>Linker>General//"(QLIB_INC)" to the additional include directories entry.// (3) Add in the Dialog Menu->Project->Settings->Linker->General// "(QLIB_LIB)\qlib32.lib" to the additional library and object // modules directories entry.

    So habe ich es auch gemacht.



  • @avci sagte in Befehlszeilenfehler: Ungültige Makrodefinition:

    Das hier ist die Fehlermeldung:

    Nein! Die Fehlermeldung steht im Ouput-Tab. Das ist nur eine eher nutzlose Zusammenfassung.



  • Kannst du einen Screenshot machen wo du den Fehler siehst? Man kann hier keine Screenshots hochladen, aber du kannst jede beliebige Image-Hosting Seite verlinken.


Log in to reply