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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.71
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
#1

winnt.h(5545) : error C2146: что за ошибка ? - C++

28.09.2012, 11:29. Просмотров 2265. Ответов 13
Метки нет (Все метки)

c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(5545) : error C2146: syntax error : missing ';' before identifier 'ContextRecord'
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(5545) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(5545) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11263) : error C2065: 'PCONTEXT' : undeclared identifier
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11264) : error C2146: syntax error : missing ')' before identifier 'ContextRecord'
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11264) : warning C4229: anachronism used : modifiers on data are ignored
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11264) : error C2182: 'RtlCaptureContext' : illegal use of type 'void'
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11264) : error C2491: 'RtlCaptureContext' : definition of dllimport data not allowed
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(11264) : error C2059: syntax error : ')'
c:\program files\microsoft sdks\windows\v6.0a\include\winnt.h(12935) : error C3861: '__readfsdword': identifier not found
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 11:33     winnt.h(5545) : error C2146: что за ошибка ? #2
код в студию
инклуды может не в том порядке стоят?
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 11:49  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #3
plugin.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include "stdafx.h"
#include "NPString.h"
 
CNPString::CNPString(NPString npString) : m_pszData(0), m_len(0)
{
    Set( npString.UTF8Characters, npString.UTF8Length );
}
 
CNPString::CNPString(LPCTSTR psz, int len) : m_pszData(0), m_len(0)
{
    Set( psz, len );
}
 
CNPString::~CNPString()
{
    delete m_pszData;
}
plugin.cpp

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#ifdef XP_WIN
#include <windows.h>
#include <stdio.h>
#include <windowsx.h>
#endif
 
#ifdef XP_MAC
#include <TextEdit.h>
#endif
 
#ifdef XP_UNIX
#include <string.h>
#endif
 
#include "plugin.h"
#include "npfunctions.h"
 
//kk: convinience 
#include "NPString.h"
 
void* NPN_MemAlloc(LPCTSTR psz)
{
    int size = strlen( psz );
 
    void * rv = NPN_MemAlloc(size);
 
    strcpy( (char*) rv, psz );
 
    return rv;
}
 
static NPIdentifier sFoo_id;
static NPIdentifier sBar_id;
static NPIdentifier sDocument_id;
static NPIdentifier sBody_id;
static NPIdentifier sCreateElement_id;
static NPIdentifier sCreateTextNode_id;
static NPIdentifier sAppendChild_id;
static NPIdentifier sPluginType_id;
static NPObject *sWindowObj;
 
// Helper class that can be used to map calls to the NPObject hooks
// into virtual methods on instances of classes that derive from thisclass.
class ScriptablePluginObjectBase : public NPObject
{
public:
  ScriptablePluginObjectBase(NPP npp) : mNpp(npp)
  {
  }
 
  virtual ~ScriptablePluginObjectBase()
  {
  }
...............................
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 11:51  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #4
Вот сам проект!
Вложения
Тип файла: rar npruntime.rar (260.0 Кб, 5 просмотров)
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 12:09     winnt.h(5545) : error C2146: что за ошибка ? #5
Попробуй обновить студию, или:
на заграничном форуме нашел инфу:
Edit the file winnt.h yourself but be careful. Better you backup the file first. You can see that the error message complains first about missing ';' before identifier 'PVOID64' at line 222 in the file "c:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h" so you can go and edit it but only after you have backup of the original file so you can restore it if the editing creates more problems than it solves. It seems that keyword "default-int" should be defined somewhere. You can change it to plain "int" like the compiler suggests but it may also create an avalanche: lots of compiler errors elsewhere. Just try out.
В ручную модифицируй файл winnt.h, там в 222 строке перед PVOID64 отсутствует ";"
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 12:23  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #6
Цитата Сообщение от severus-x Посмотреть сообщение
Попробуй обновить студию, или:
на заграничном форуме нашел инфу:

В ручную модифицируй файл winnt.h, там в 222 строке перед PVOID64 отсутствует ";"

а именно где ?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
................
#ifdef DEPRECATE_DDK_FUNCTIONS
#ifdef _NTDDK_
#define DECLSPEC_DEPRECATED_DDK DECLSPEC_DEPRECATED
#ifdef DEPRECATE_SUPPORTED
#define PRAGMA_DEPRECATED_DDK 1
#endif
#else
#define DECLSPEC_DEPRECATED_DDK
#define PRAGMA_DEPRECATED_DDK 1
#endif
#else
#define DECLSPEC_DEPRECATED_DDK
#define PRAGMA_DEPRECATED_DDK 0
#endif
....................
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 12:25     winnt.h(5545) : error C2146: что за ошибка ? #7
c:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h вот в этом файле.
только если у тебя другая версия студии, то будет не 8, а № твоей версии.
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 12:35  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #8
Цитата Сообщение от severus-x Посмотреть сообщение
c:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h вот в этом файле.
только если у тебя другая версия студии, то будет не 8, а № твоей версии.

фаил я нашел "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Includeэwinnt.h"

http://*************/s/2lm1J

там не просто добавит?
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 12:38     winnt.h(5545) : error C2146: что за ошибка ? #9
boyboy61,
http://*************/s/2lm1J

там не просто добавит?
не понял
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 12:39  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #10
это из msdn.

line 222 in winnt.h reads like this:

typedef void * POINTER_64 PVOID64;

and creates the error message

Error C2146: syntax error: missing ';' before identifier PVOID64.


а у меня error C2146: syntax error : missing ';' before identifier 'ContextRecord' ?
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 12:41     winnt.h(5545) : error C2146: что за ошибка ? #11
Перед чем у тебя не хватает ";", перед тем и поставь)
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 12:42  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #12
Цитата Сообщение от severus-x Посмотреть сообщение
boyboy61,

не понял
222 сртока это здес...а тут?
Миниатюры
winnt.h(5545) : error C2146:  что за ошибка ?  
severus-x
18 / 18 / 0
Регистрация: 21.09.2012
Сообщений: 78
28.09.2012, 12:45     winnt.h(5545) : error C2146: что за ошибка ? #13
значит поставь перед ContextRecord

про 222 строку я из примера с загран.форума перевел.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.09.2012, 13:15     winnt.h(5545) : error C2146: что за ошибка ?
Еще ссылки по теме:

C++ Подскажите что за ошибка - error C4430:
C++ CFilename и error C2146
Ошибка в тестовом примере: "Error 1 error C2143: syntax error : missing ';' before 'if'" C++
Error C2146 C++
Error C2760: синтаксическая ошибка / Fatal error C1004: непредвиденное обнаружение конца файла C++

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

Или воспользуйтесь поиском по форуму:
boyboy61
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 39
28.09.2012, 13:15  [ТС]     winnt.h(5545) : error C2146: что за ошибка ? #14
неаааааааа

не помагает!
Yandex
Объявления
28.09.2012, 13:15     winnt.h(5545) : error C2146: что за ошибка ?
Ответ Создать тему
Опции темы

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