Probleme mit 'C'-Bindung



  • Hi,
    werde aus folgendem Fehler irgendwie nicht schlau. 😡
    Bei MSDN wurde geraten den Code zu ändern.
    Geht das nicht auch einfachern mit einer Konfigurationsmöglichkeit?

    Fehlerliste:
    Fehler 104 error C1003: Mehr als 100 Fehler gefunden; Kompilierung wird abgebrochen. C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcomcli.h 2062 1 SyRelAn
    Fehler 3 error C2733: 'AfxDynamicDownCast' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\afx.h 611 1 SyRelAn
    Fehler 59 error C2733: 'ATL::AtlCharNext' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 543 1 SyRelAn
    Fehler 56 error C2733: 'ATL::AtlFindResourceInstance' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 470 1 SyRelAn
    Fehler 53 error C2733: 'ATL::AtlGetStringResourceImage' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 370 1 SyRelAn
    Fehler 54 error C2733: 'ATL::AtlGetStringResourceImage' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 389 1 SyRelAn
    Fehler 55 error C2733: 'ATL::AtlGetStringResourceImage' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 401 1 SyRelAn
    Fehler 51 error C2733: 'ATL::AtlIsValidString' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 70 1 SyRelAn
    Fehler 16 error C2733: 'ATL::AtlMultiply' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 131 1 SyRelAn
    Fehler 18 error C2733: 'ATL::AtlMultiply' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 146 1 SyRelAn
    Fehler 20 error C2733: 'ATL::AtlMultiply' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 161 1 SyRelAn
    Fehler 22 error C2733: 'ATL::AtlMultiply' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 176 1 SyRelAn
    Fehler 63 error C2733: 'ATL::AtlprintfT' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 587 1 SyRelAn
    Fehler 50 error C2733: 'ATL::AtlStrLen' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcore.h 52 1 SyRelAn
    Fehler 41 error C2733: 'ATL::AtlTrace' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atltrace.h 578 1 SyRelAn
    Fehler 42 error C2733: 'ATL::AtlTrace2' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atltrace.h 582 1 SyRelAn
    Fehler 73 error C2733: 'ATL::SysAllocStringHelper' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcomcli.h 1682 1 SyRelAn
    Fehler 72 error C2733: 'ATL::SysFreeStringHelper' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlcomcli.h 1669 1 SyRelAn
    Fehler 37 error C2733: 'AtlA2WHelper' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 612 1 SyRelAn
    Fehler 38 error C2733: 'AtlW2AHelper' : Zweite C-Bindung für überladene Funktion nicht zulässig C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 620 1 SyRelAn
    Fehler 4 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atldef.h 674 1 SyRelAn
    Fehler 5 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atldef.h 684 1 SyRelAn
    Fehler 6 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 42 1 SyRelAn
    Fehler 7 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 45 1 SyRelAn
    Fehler 8 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 53 1 SyRelAn
    Fehler 9 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 61 1 SyRelAn
    Fehler 10 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 69 1 SyRelAn
    Fehler 11 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 77 1 SyRelAn
    Fehler 12 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 85 1 SyRelAn
    Fehler 13 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 94 1 SyRelAn
    Fehler 14 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 109 1 SyRelAn
    Fehler 15 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 130 1 SyRelAn
    Fehler 17 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 145 1 SyRelAn
    Fehler 19 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 160 1 SyRelAn
    Fehler 21 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 175 1 SyRelAn
    Fehler 23 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 190 1 SyRelAn
    Fehler 24 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 204 1 SyRelAn
    Fehler 25 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 345 1 SyRelAn
    Fehler 26 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 444 1 SyRelAn
    Fehler 27 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 491 1 SyRelAn
    Fehler 28 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlalloc.h 667 1 SyRelAn
    Fehler 29 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 113 1 SyRelAn
    Fehler 30 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 158 1 SyRelAn
    Fehler 31 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 177 1 SyRelAn
    Fehler 32 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 229 1 SyRelAn
    Fehler 33 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 280 1 SyRelAn
    Fehler 34 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 313 1 SyRelAn
    Fehler 35 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 346 1 SyRelAn
    Fehler 36 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlconv.h 415 1 SyRelAn
    Fehler 39 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atltrace.h 32 1 SyRelAn
    Fehler 40 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atltrace.h 439 1 SyRelAn
    Fehler 43 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 48 1 SyRelAn
    Fehler 44 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 61 1 SyRelAn
    Fehler 45 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 74 1 SyRelAn
    Fehler 46 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 93 1 SyRelAn
    Fehler 47 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 113 1 SyRelAn
    Fehler 48 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 302 1 SyRelAn
    Fehler 49 error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include\atlsimpcoll.h 308 1 SyRelAn

    Danke schonmal im Voraus für eure Antworten. 🙂 👍



  • Hast du in deinem eigenen Code irgendwo

    extern "C"
    {
      #include <...>
    }
    

    stehen?
    Es scheint so als ob (überladenene) C++-Funktionen als C Funktionen eingebunden werden.



  • Der besagte Ausschnitt taucht bei mir nirgends auf. 😞
    Wenn ich jedoch auf den Fehler klicke, lande ich immer bei

    template<>
    

    (Fehler: error C2894: Vorlagen können nicht mit 'C'-Bindung deklariert werden)
    oder bei

    inline
    

    Diese Befehle sind dann zwar Markiert(wie mit der Mouse) aber nicht rot unterstrichen.



  • Wenn du den Header in Source-Dateien includierst, welche nur die Endung .c und nicht .cpp haben, wird der Header auch mit C kompiliert.


Anmelden zum Antworten