Модераторы: feodorv, GremlinProg, xvr, Fixin

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проблема с хедером 
:(
    Опции темы
knut
Дата 10.9.2007, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



Добрый день.
вот вклучаю хедер и получаю ошибку 
#include "afxdisp.h"
Цитата

fatal error C1189: #error :  WINDOWS.H already included.  MFC apps must not #include 
<windows.h>



p.s в проекте не где не включенны ни какие "windows.h" 


--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
zkv
Дата 10.9.2007, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



Цитата(knut @  10.9.2007,  14:51 Найти цитируемый пост)
в проекте не где не включенны ни какие "windows.h"  

а косвенно? те подключил файл, в котором подключен windows.h
PM MAIL   Вверх
yar
Дата 10.9.2007, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 8.9.2007
Где: Одесса, Украина

Репутация: 2
Всего: 8



Попробуйте поставить этот include либо перед всеми остальными, либо после.
--------------------
Если бы строители возводили здания так, как программисты пишут программы, первый же дятел уничтожил бы мировую цивилизацию.Джеральд Вайнберг
PM MAIL WWW   Вверх
knut
Дата 10.9.2007, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



yar, 
поставил я инклуд в самое начало stdafx.h фаила и получил ошибки
Цитата

error C2146: syntax error : missing ';' before identifier 'HwndMSWheel'    
error C2433: 'HWND' : 'inline' not permitted on data declarations    
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    
error C2065: 'PUINT' : undeclared identifier  
error C2146: syntax error : missing ')' before identifier 'puiMsh_MsgMouseWheel'    
 
а если в конец то та же ошибка что в начале

zkv, 
вот те все файлы каторые у меня в прекомпил хедере 
#include <atlbase.h>
#include <atlcom.h>
и где я косвенно подклучаю windows.h?


--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
zkv
Дата 10.9.2007, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



Цитата(knut @  10.9.2007,  15:46 Найти цитируемый пост)
и где я косвенно подклучаю windows.h? 

тута:
Цитата(knut @  10.9.2007,  15:46 Найти цитируемый пост)
#include <atlbase.h>

поясняю:
atlbase.h содержит:
Код

#include <atlcore.h>

atlcore.h содержит:
Код

#include <windows.h>

делай так:
Код

#include <afxwin.h>
#include <afxdisp.h>

#include <atlbase.h>
#include <atlcom.h>


Это сообщение отредактировал(а) zkv - 10.9.2007, 16:11
PM MAIL   Вверх
knut
Дата 10.9.2007, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



zkv, 
зделал как ты сказал но на выходе опять error ы
Цитата

error C2146: syntax error : missing ';' before identifier 'HwndMSWheel'
error C2433: 'HWND' : 'inline' not permitted on data declarations    
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    141
error C2065: 'PUINT' : undeclared identifier    
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    
Error    7    error C2059: syntax error : ')'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    147    
Error    8    error C2143: syntax error : missing ';' before '{'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    148    
Error    9    error C2447: '{' : missing function header (old-style formal list?)    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    148    
Error    10    error C2146: syntax error : missing ';' before identifier 'HRESULT'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    11    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    12    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    13    error C2065: 'CALLBACK' : undeclared identifier    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    14    error C2065: 'LPFNPSPCALLBACKA' : undeclared identifier    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    15    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    16    fatal error C1903: unable to recover from previous error(s); stopping compilation    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    




--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
zkv
Дата 10.9.2007, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



проверил, у меня даже так работает (VC++8.0):
Код

#include <afxdisp.h>
#include <atlbase.h>
#include <atlcom.h>

так что не могу помочь больше, попробуй локализовать на тестовом проекте, может с precompiled headers ошибка связана?
PM MAIL   Вверх
knut
Дата 11.9.2007, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



zkv, 
что с моим компилером версия(VC++8.0) вот создаю простое преложение (МФЦ)
собираю а компилятор жалуется
Цитата

Error    1    error C2146: syntax error : missing ';' before identifier 'HwndMSWheel'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    141    
Error    2    error C2433: 'HWND' : 'inline' not permitted on data declarations    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    141    
Error    3    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    141    
Error    4    error C2065: 'PUINT' : undeclared identifier    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    142    
Error    5    error C2146: syntax error : missing ')' before identifier 'puiMsh_MsgMouseWheel'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    142    
Error    6    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    142    
Error    7    error C2059: syntax error : ')'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    147    
Error    8    error C2143: syntax error : missing ';' before '{'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    148    
Error    9    error C2447: '{' : missing function header (old-style formal list?)    c:\program files\microsoft visual studio 8\vc\platformsdk\include\zmouse.h    148    
Error    10    error C2146: syntax error : missing ';' before identifier 'HRESULT'    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    11    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    12    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\commctrl.h    29    
Error    13    error C2065: 'CALLBACK' : undeclared identifier    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    14    error C2065: 'LPFNPSPCALLBACKA' : undeclared identifier    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    15    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    
Error    16    fatal error C1903: unable to recover from previous error(s); stopping compilation    c:\program files\microsoft visual studio 8\vc\platformsdk\include\prsht.h    97    


в чем дело?


--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
Nastya
Дата 11.9.2007, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: 3
Всего: 44



В свойствах проекта стоит что ты используешь MFC ?


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
zkv
Дата 11.9.2007, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



Цитата(knut @  11.9.2007,  10:57 Найти цитируемый пост)
в чем дело? 

трудно сказать. 
Я не могу воссоздать ошибку - у меня все работает. 
А как я могу ответить на не заданный вопрос?

Возможно дефайн где-то затесался ненужный типа WIN32(или наподобие)
В настройках проекта в precompiled header что стоит?

Добавлено через 1 минуту и 44 секунды
Цитата(Nastya @  11.9.2007,  11:15 Найти цитируемый пост)
В свойствах проекта стоит что ты используешь MFC ? 

на этапе компиляции это не важно smile
PM MAIL   Вверх
knut
Дата 11.9.2007, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



Nastya, 
да(configuration property->General->Prop.Def.->use of MFC  -Use MFC in a Shared DLL)
zkv, 
Цитата

В настройках проекта в precompiled header что стоит? 

c/c++ ->precompiled header ->precompiled header file -$(IntDir)\$(TargetName).pch
c/c++ ->precompiled header ->create/use precompiled header  - Use Precompiled Header (/Yu)




--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
zkv
Дата 11.9.2007, 15:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



knut, проблема не в precompiled header.
нужно больше инфы.
Создай проект, в нем создай теже файлы, подключи теже хидеры, что в твоем проекте (вообщем нужно воссоздать ошибку), если ошибка останется - выкладывай.
PM MAIL   Вверх
knut
Дата 11.9.2007, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



zkv, 
я созал простой (пустой)мфц  проект подключаю  #include <afxdisp.h> и те же ошибки  smile .

Добавлено через 2 минуты и 54 секунды
все ошибки на эту функц.
Код

__inline HWND HwndMSWheel(
      PUINT puiMsh_MsgMouseWheel,
      PUINT puiMsh_Msg3DSupport,
      PUINT puiMsh_MsgScrollLines,
      PBOOL pf3DSupport,
      PINT  piScrollLines
)



--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
zkv
Дата 11.9.2007, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: 12
Всего: 92



Цитата(knut @  11.9.2007,  15:49 Найти цитируемый пост)
я созал простой (пустой)мфц  проект подключаю  #include <afxdisp.h> и те же ошибки

выложи этот проект сюда, посмотрим
оставь только файлы: sln, vcproj, cpp, h, rc и всю папку res.
Заархивируй и выкладывай.
PM MAIL   Вверх
yar
Дата 11.9.2007, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 8.9.2007
Где: Одесса, Украина

Репутация: 2
Всего: 8



А что говорит компилятор, если ему поставить директиву /showIncludes ?.

Похожая проблема здесь.
zmouse.h должен инклюдится после  windows.h.

--------------------
Если бы строители возводили здания так, как программисты пишут программы, первый же дятел уничтожил бы мировую цивилизацию.Джеральд Вайнберг
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0587 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.