|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.05.2015, 06:45 | #1 |
Пользователь
Регистрация: 01.10.2012
Сообщений: 23
|
WINDOWS.H already included VS пропуск заголовков.
Здравствуйте!
При подключении сторонних библиотек (в т.ч. хэдеров) с использованием библиотек MFC вылетает в заголовке указанная ошибка (понятно, ведь Windows.H юзается в библиотеках MFC). В некоторых версиях MS Visual Studio помогало поставить в начало перед #include "stdafx.g" мой хэдер, но тогда вылетали другие ошибки из-за того, что мой хэдер просто был пропущен: "пропущен при поиске использования предкомпилированного заголовка". Уже и отключал использование предкомпилированных заголовков и что только не делал - не помогает (юзал 2008, 2010 и 2013 Ultimate версии с обновлениями). Уже извёлся |
10.05.2015, 07:38 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,759
|
Вы список хедеров приводите, так более предметным будет разговор. Пробовали, если еще не определены, определять версию сдк винды и LEAN_AND_MEAN?
В ваших хедерах есть стражи включения? |
10.05.2015, 08:13 | #3 |
Пользователь
Регистрация: 01.10.2012
Сообщений: 23
|
Да тут приводить толком нечего, пустой проект:
#include "apl_api.h" //моя либа #include "stdafx.h" #include "Form1.h" Ошибка: "warning C4627: #include "apl_api.h": пропущен при поиске использования предкомпилированного заголовка" А если так: #include "stdafx.h" #include "apl_api.h" //моя либа #include "Form1.h" Ошибка:WINDOWS.H already included. MFC apps must not #include <windows.h> "определять версию сдк винды и LEAN_AND_MEAN?" - поподробнее, пожалуйста. Насчёт стражей - не знаю как в моих, но в стандартных, видимо, их нет. Добавлял уже ручками - результат тот же, имхо. |
10.05.2015, 08:48 | #4 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Вашу либу - после stdafx.h
Если что-то будет нужно вашей либе - вставьте перед вашей либой и после stdafx.h Windows.h подключать в MFC проектах нельзя. stdafx.h включать *первым* во *всех* cpp файлах. |
10.05.2015, 08:55 | #5 |
Пользователь
Регистрация: 01.10.2012
Сообщений: 23
|
Результат, как уже говорил: fatal error C1189: #error: WINDOWS.H already included. MFC apps must not #include <windows.h>.
Уже наслышан, что нельзя, да вот данная проблема пока нерешаема. Уже не 1 десяток даже англ. "решений" просмотрел и перепробовал.. Я, конечно, подозревал и ранее, что у MS руки не оттуда растут, но сейчас понимаю - что у них вообще рук нет... |
10.05.2015, 10:17 | #6 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,759
|
что ваша либа подключает?
|
10.05.2015, 16:53 | #7 |
Пользователь
Регистрация: 01.10.2012
Сообщений: 23
|
Набор API-функций для косвенного доступа к БД программного комплекса (кстати эти проги и сам API тоже написаны на С++ на 2008 студии). Что так же странно - в документации по API вроде как всё просто описано, как подключить, но вот оно не работает. Пробую же самое элементарное - пустой проект, Windows Forms, MFC (несколько поперепробовал, на разных версиях), закидываю код из примера, добавляю пути к каталогам, запускаю и вуаля - подключаемый класс API не идентифицирован из-за пропуска предкомпиллированных заголовков.
|
10.05.2015, 17:51 | #8 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
А кто вам мешает сделать проект без предкомпилиравонных заголовков?
|
10.05.2015, 18:05 | #9 |
Пользователь
Регистрация: 01.10.2012
Сообщений: 23
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
пропуск ошибки. ПОМОГИТЕ! | exivmaks | C# (си шарп) | 1 | 02.04.2015 11:18 |
пропуск значений | Валенсия34 | SQL, базы данных | 2 | 07.05.2013 14:30 |
Пропуск ненужных ячеек | energizeron | Microsoft Office Excel | 5 | 23.02.2012 15:06 |
Пропуск строки[C++] | xPAL | Помощь студентам | 0 | 29.11.2011 15:50 |
Пропуск строк программы (Си) | persalena | Помощь студентам | 10 | 21.02.2009 20:27 |