Форум программистов, компьютерный форум CyberForum.ru

Ошибка при подключении winnt.h - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.76
SimaLiveEvil
5 / 5 / 0
Регистрация: 02.05.2010
Сообщений: 40
15.10.2010, 12:57     Ошибка при подключении winnt.h #1
Доброго времени суток.
Есть текст программы, который работает правильно. Шифрует введенную с клавиатуры строку ну и выдает на экран шифртекст. Теперь нужно сделать шифрования файла. Чтобы юзать WinAPI подключаю winnt.h и... о нифига себе!!! Появилось 86 ошибок!!! Лог прилагается. Естественно, открыл одну из своих ранее написанных прог, использующих winnt.h и проверил. Все в норме. Не знаю в чем дело...

Если нужно, выложу код.

Код
>------ Построение начато: проект: Twofish_Cryptor_ver.0.3, Конфигурация: Debug Win32 ------
1>  Twofish_Algorithm.c
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(494): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(494): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(497): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(506): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(507): error C2061: синтаксическая ошибка: идентификатор "Reserved"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(507): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(507): error C3409: пустой блок атрибута не допускается
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(507): error C2143: синтаксическая ошибка: отсутствие "]" перед "константа"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(508): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(532): error C2061: синтаксическая ошибка: идентификатор "FSHORT"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(532): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(605): error C2061: синтаксическая ошибка: идентификатор "PLCID"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(605): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(606): error C2061: синтаксическая ошибка: идентификатор "LANGID"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(606): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2064): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2064): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2065): error C2061: синтаксическая ошибка: идентификатор "StatusWord"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2065): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2068): error C2061: синтаксическая ошибка: идентификатор "ErrorOpcode"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2068): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2070): error C2061: синтаксическая ошибка: идентификатор "ErrorSelector"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2070): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2071): error C2061: синтаксическая ошибка: идентификатор "Reserved2"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2071): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2073): error C2061: синтаксическая ошибка: идентификатор "DataSelector"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2073): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2074): error C2061: синтаксическая ошибка: идентификатор "Reserved3"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2074): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2100): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2108): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2108): error C2061: синтаксическая ошибка: идентификатор "XSAVE_FORMAT"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2110): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2116): error C2061: синтаксическая ошибка: идентификатор "PXSAVE_AREA"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2128): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2234): error C2065: XSAVE_FORMAT: необъявленный идентификатор
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2234): error C2118: отрицательный индекс
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2235): error C2065: XSAVE_AREA: необъявленный идентификатор
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2235): error C2059: синтаксическая ошибка: )
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2238): error C2065: XSAVE_AREA: необъявленный идентификатор
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(2238): error C2118: отрицательный индекс
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4291): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4291): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4292): error C2061: синтаксическая ошибка: идентификатор "BaseLow"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4292): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4313): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6289): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6289): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6290): error C2061: синтаксическая ошибка: идентификатор "BaseLow"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6290): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6310): error C2371: HighWord: переопределение; различные базовые типы
1>          c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(4312): см. объявление "HighWord"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6311): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6315): error C2061: синтаксическая ошибка: идентификатор "WOW64_LDT_ENTRY"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6316): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6361): error C2061: синтаксическая ошибка: идентификатор "PCONTEXT"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(6362): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7094): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7095): error C2061: синтаксическая ошибка: идентификатор "AceCount"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7095): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7096): error C2061: синтаксическая ошибка: идентификатор "Sbz2"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7096): error C2059: синтаксическая ошибка: ;
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7097): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7098): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7124): error C2061: синтаксическая ошибка: идентификатор "WORD"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7125): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7126): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7233): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7233): error C2061: синтаксическая ошибка: идентификатор "ACE_HEADER"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7236): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7238): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7241): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7241): error C2061: синтаксическая ошибка: идентификатор "ACE_HEADER"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7244): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7245): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7248): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7248): error C2061: синтаксическая ошибка: идентификатор "ACE_HEADER"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7251): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7252): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7255): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7255): error C2061: синтаксическая ошибка: идентификатор "ACE_HEADER"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7258): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7259): error C2143: синтаксическая ошибка: отсутствие "{" перед "*"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7262): error C2016: В языке C необходимо, чтобы в struct или union был по крайней мере один элемент
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7262): error C2061: синтаксическая ошибка: идентификатор "ACE_HEADER"
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7265): error C2059: синтаксическая ошибка: }
1>c:\program files\microsoft sdks\windows\v7.0a\include\winnt.h(7277): fatal error C1046: ограничение компилятора: недопустимая степень вложения struct
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 13:14     Ошибка при подключении winnt.h #2
C++
1
#include <windows.h>
не подключали?
SimaLiveEvil
5 / 5 / 0
Регистрация: 02.05.2010
Сообщений: 40
15.10.2010, 13:18  [ТС]     Ошибка при подключении winnt.h #3
Цитата Сообщение от dihlofos Посмотреть сообщение
C++
1
#include <windows.h>
не подключали?
ни к чему не привело...

upd: IntelliSense даже пишет, что в winnt.h идентификатор "WORD" неопределен... че за тупизм...
Black Fregat
 Аватар для Black Fregat
1353 / 983 / 215
Регистрация: 31.05.2009
Сообщений: 4,093
15.10.2010, 13:33     Ошибка при подключении winnt.h #4
Подозреваю, что всё дело - в режиме компиляции "pure C".
Попробуйте переименовать исходный файл в *.cpp.
SimaLiveEvil
5 / 5 / 0
Регистрация: 02.05.2010
Сообщений: 40
15.10.2010, 13:38  [ТС]     Ошибка при подключении winnt.h #5
Цитата Сообщение от Black Fregat Посмотреть сообщение
Подозреваю, что всё дело - в режиме компиляции "pure C".
Попробуйте переименовать исходный файл в *.cpp.
К сожалению, ничего не изменяется

Добавлю, что исходников два. И еще есть несколько заголовочных файлов, которые были в исходнике алгоритма.
Black Fregat
 Аватар для Black Fregat
1353 / 983 / 215
Регистрация: 31.05.2009
Сообщений: 4,093
15.10.2010, 13:46     Ошибка при подключении winnt.h #6
Тогда нужно копать порядок подключения заголовочных файлов - от этого многое зависит.
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
15.10.2010, 13:50     Ошибка при подключении winnt.h #7
Сделал пустой проект:
C++
1
2
3
4
5
6
7
8
#include "stdafx.h"
//#include <windows.h>
#include <winnt.h>
 
int main()
{
        return 0;
}
Выдаёт пачку ошибок в winnt.h. А если раскоментировать windows.h - работает. Почему - самому интересно.
SimaLiveEvil
5 / 5 / 0
Регистрация: 02.05.2010
Сообщений: 40
15.10.2010, 14:02  [ТС]     Ошибка при подключении winnt.h #8
Кстати, опция "предварительно скомпилированный заголовок" у меня отключена. Но она вроде и не влияет. По крайней мере с программой, которую я писал ранее...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.02.2013, 17:36     Ошибка при подключении winnt.h
Еще ссылки по теме:

C++ ошибка при подключении библиотеки
C++ Ошибка при подключении sfml
C++ Ошибка в консольном приложении при подключении MFC?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
sick_seeker
Сообщений: n/a
26.02.2013, 17:36     Ошибка при подключении winnt.h #9
Ммм... добавь где-то вначале
C++
1
#include <windef.h>
Yandex
Объявления
26.02.2013, 17:36     Ошибка при подключении winnt.h
Ответ Создать тему
Опции темы

Текущее время: 12:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru