Die Include-Datei 'afxres.h' kann in VC2010 Express nicht geöffnet werden


137

Ich versuche, ein altes Projekt mit VS Express 2010 zu kompilieren, erhalte jedoch folgende Fehlermeldung:

Schwerwiegender Fehler RC1015: Include-Datei 'afxres.h' kann nicht geöffnet werden. von diesem Code

/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "afxres.h"

Ich habe Windows SDK bereits installiert, aber ohne Erfolg.

Vielen Dank!

Antworten:


190

Dieser Header ist Teil der MFC-Bibliothek. Die VS Express Edition enthält kein MFC. Wenn Ihr Projekt , das Sie nicht MFC verwenden können sicher ersetzen afxres.hmit windows.hIhrem terrain2.rc.


4
danke, dann bekomme ich den Fehler: Fehler RC2104: undefiniertes Schlüsselwort oder Schlüsselname: IDC_STATIC
Klemme

@clamp: Das klingt nach einer Common Control-Definition. Versuchen Sie auch, #include <Commctrl.h> hinzuzufügen (und verknüpfen Sie Ihr Programm mit Comctl32.lib)
Standard

3
Andernfalls ist IDC_STATIC als -1 definiert. Definieren Sie es also selbst, wenn dies das einzige verbleibende Problem ist.
ErikH

36
winres.h definiert IDC_STATIC, sodass Sie wahrscheinlich nur #include <winres.h> anstelle von afxres.h oder windows.h einschließen können.
Conrad Poelman

3
Keine Lösung für VS 2017

123

Hatte das gleiche Problem. Es wurde behoben, indem Microsoft Foundation Classes für C ++ installiert wurde.

  1. Anfang
  2. Programm ändern oder entfernen (Typ)
  3. Microsoft Visual Studio
  4. Ändern
  5. Wählen Sie "Microsoft Foundation Classes for C ++".
  6. Aktualisieren

Geben Sie hier die Bildbeschreibung ein


18
Dies wird OP wahrscheinlich nicht helfen, da er / sie in der Express Edition ist, aber es hat mir sicher geholfen! Vielen Dank.
Nemec

2
Ich habe mein Problem behoben. Ich bin in Visual Studio 2013 Ultimate und es hat gut funktioniert. Vielen Dank! :-)
AStopher

4
Mit dieser Antwort kann ich auch mein Problem in der Visual Studio 2015 Community Edition lösen.
Andy Li

2
In Visual Studio 2017 Pro wird dieser Fehler auch bei installierten MFC-Komponenten angezeigt.
jrh

37

Sogar ich stand vor einem ähnlichen Problem,

Schwerwiegender Fehler RC1015: Include-Datei 'afxres.h' kann nicht geöffnet werden. von diesem Code

Das Ersetzen von afxres.h durch Winresrc.h und das Deklarieren von IDC_STATIC als -1 hat bei mir funktioniert. (Verwenden von Visual Studio Premium 2012)

//#include "afxres.h"
#include "WinResrc.h"
#define IDC_STATIC  -1

Arbeitete für mich, um das Problem mit der VS2019 Pro Edition zu lösen.
MCoder

11

Alternativ können Sie Ihre eigene afxres.h erstellen:

#ifndef _AFXRES_H
#define _AFXRES_H
#if __GNUC__ >= 3
#pragma GCC system_header
#endif

#ifdef __cplusplus
extern "C" {
#endif

#ifndef _WINDOWS_H
#include <windows.h>
#endif

/* IDC_STATIC is documented in winuser.h, but not defined. */
#ifndef IDC_STATIC
#define IDC_STATIC (-1)
#endif

#ifdef __cplusplus
}
#endif
#endif   

2
nützlich bei der Unterstützung plattformübergreifender
schneidiger

8

Sie können auch versuchen, afxres.h durch WinResrc.h zu ersetzen


Ich habe die Datei in windows.h und WinResrc.h geändert und die Nachricht hat sich in beiden Fällen in eine andere Meldung geändert, die besagt: Fehler RC2104: undefiniertes Schlüsselwort oder Schlüsselname: IDC_STATIC. Ich vermute nur, dass diese IDC_static in den ursprünglichen afxres definiert ist .h-Datei, aber wie kann dieser neue Fehler behoben werden?
HashDefine

6

Es gelang, dies zu beheben, indem der folgende Ordner aus einem anderen Visual Studio-Setup kopiert wurde (nicht Express).

aus C: \ Programme (x86) \ Microsoft Visual Studio 12.0 \ VC \ atlmfc

zu C: \ Programme (x86) \ Microsoft Visual Studio 11.0 \ VC \ atlmfc


1

Ein ähnliches Problem betrifft Visual Studio 2015 RC. Manchmal verliert es die Fähigkeit, RC zu öffnen: Sie doppelklicken, aber der Editor führt keine Menüs und Dialoge aus.

Klicken Sie mit der rechten Maustaste auf die Datei * .rc, sie wird geöffnet:

Geben Sie hier die Bildbeschreibung ein

Und ändern Sie sich wie folgt:

Geben Sie hier die Bildbeschreibung ein


1
Dies hat bei mir nicht funktioniert: Schwerwiegender Fehler RC1015: Include-Datei 'afxres.h' kann nicht geöffnet werden.
Ardila

-1

Hatte ein ähnliches Problem, aber die Meldung wurde angezeigt, als ich versuchte, eine Projektlösung zu öffnen. Was für mich funktioniert hat war:

WERKZEUGE -> Einstellungen importieren und exportieren ...-> Alle Einstellungen zurücksetzen

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.