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!

Klemme
quelle

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.

Kirill V. Lyadvinsky
quelle
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

Oberst Panik
quelle
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
ravi.zombie
quelle
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   
Gerben
quelle
2
nützlich bei der Unterstützung plattformübergreifender
schneidiger
8

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

Irbis
quelle
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

Tiago Duarte
quelle
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

ingconti
quelle
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

Olppah
quelle