Не вдається відкрити включити файл 'afxres.h' у VC2010 Express


137

Я намагаюся скласти старий проект за допомогою VS express 2010, але я отримую цю помилку:

фатальна помилка RC1015: не вдається відкрити включити файл 'afxres.h'. з цього коду

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

Я вже встановив Windows SDK, але без жодного успіху.

Дякую!

Відповіді:


190

Цей заголовок є частиною бібліотеки MFC. Видання VS Express не містить MFC. Якщо ваш проект не використовує MFC ви можете спокійно замінити afxres.hз windows.hу вашій terrain2.rc.


4
дякую, тоді я отримую помилку: помилка RC2104: не визначене ключове слово або ім'я ключа: IDC_STATIC
затиск

@clamp: це звучить як визначення загального керування. спробуйте додати також #include <Commctrl.h> (і зв’яжіть свою програму з Comctl32.lib)
за замовчуванням

3
В іншому випадку IDC_STATIC визначається як -1, тому визначте його самостійно, якщо це єдина проблема, що залишилася.
erikH

36
winres.h визначає IDC_STATIC, тому ви, швидше за все, просто #include <winres.h>, а не afxres.h або windows.h.
Конрад Поельман

3
Не рішення для VS 2017

123

Була така ж проблема. Виправлено це, встановивши Microsoft Foundation Class для C ++.

  1. Початок
  2. Зміна або видалення програми (тип)
  3. Microsoft Visual Studio
  4. Змінити
  5. Виберіть "Класи Microsoft Foundation для C ++"
  6. Оновлення

введіть тут опис зображення


18
Це, мабуть, не допоможе ОП, оскільки він / вона перебуває на випуску Express, але це мені точно допомогло! Дякую.
nemec

2
Вирішили свою проблему - я перебуваю на Visual Studio 2013 Ultimate, і це спрацювало чудово. Дякую! :-)
AStopher

4
Я також можу вирішити свою проблему в спільному виданні Visual Studio 2015 за допомогою цієї відповіді.
Енді Лі

2
У Visual Studio 2017 Pro я отримую цю помилку навіть із встановленими компонентами MFC.
jrh

37

Навіть я теж стикався з подібним питанням,

фатальна помилка RC1015: не вдається відкрити включити файл 'afxres.h'. з цього коду

Заміна afxres.h на Winresrc.h та оголошення IDC_STATIC як -1 працювало для мене. (Використовуючи візуальну студію Premium 2012)

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

Мені працювали над вирішенням проблеми з виданням VS2019 pro.
MCoder

11

Крім того, ви можете створити свій власний afxres.h:

#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
корисно при підтримці крос-платформи
тире

8

Ви також можете спробувати замінити afxres.h на WinResrc.h


Я змінив файл на windows.h та WinResrc.h, і повідомлення було змінено в обох випадках на інший безлад, який вказує: помилка RC2104: не визначене ключове слово або ім'я ключа: IDC_STATIC .. Я просто здогадуюсь, що цей IDC_static визначений у межах первинних афкср .h файл, але як вирішити цю нову помилку?
hashDefine

6

вдалося виправити це, скопіювавши нижче папку з іншої установки Visual Studio (неекспрес)

від C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ VC \ atlmfc

до C: \ Файли програм (x86) \ Microsoft Visual Studio 11.0 \ VC \ atlmfc


1

аналогічний випуск стосується Visual studio 2015 RC. Іноді він втрачає можливість відкривати RC: ви двічі клацніть, але редактор не має одного меню та діалогів.

Клацніть правою кнопкою миші на файл * .rc, він відкриється:

введіть тут опис зображення

І змінити таким чином:

введіть тут опис зображення


1
Для мене це не спрацювало: фатальна помилка RC1015: не вдається відкрити включити файл 'afxres.h'.
ardila

-1

У мене була подібна проблема, але повідомлення з’явилося, коли я намагався відкрити проектне рішення. Що для мене працювало:

ІНСТРУМЕНТИ -> Імпорт та експорт налаштувань ...-> Скидання всіх налаштувань

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.