| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Ошибки при компиляции Visual Studio 2005 |
| Автор: Maks 11.8.2006, 12:48 |
| При компиляции в Visual Studio 2005 выводятся ошибки, но в Visual Studio 2003 компилируется нормально. Подскажите в чём проблема. 1>Compiling... 1>Tutorial 08.cpp 1>d:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(222) : error C2146: syntax error : missing ';' before identifier 'PVOID64' 1>d:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(222) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 1>d:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(5940) : error C2146: syntax error : missing ';' before identifier 'Buffer' 1>d:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(5940) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 1>d:\program files\microsoft visual studio 8\vc\platformsdk\include\winnt.h(5940) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 1>f:\visual studio 8\tutorial 08\tutorial 08.cpp(353) : warning C4244: 'argument' : conversion from 'time_t' to 'unsigned int', possible loss of data 1>f:\visual studio 8\tutorial 08\tutorial 08.cpp(451) : warning C4305: '+=' : truncation from 'double' to 'float' 1>Build log was saved at "file://f:\Visual Studio 8\Tutorial 08\Debug\BuildLog.htm" 1>Tutorial 08 - 5 error(s), 2 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== |
| Автор: Darhazer 11.8.2006, 13:30 |
| Добавь #include "windows.h" перед #include "winnt.h" |
| Автор: Maks 11.8.2006, 15:00 |
| Спасибо. Попробую. |
| Автор: Maks 11.8.2006, 18:29 |
| <windows.h> этот файл подключен к исходнику а <winnt.h> нет #include <windows.h> #include <time.h> BOOL bActive = true; char AppDir[1024]; HWND hWnd; HINSTANCE hInst; //----------------------------------------------------------------------------- #include <d3d9.h> #pragma comment (lib, "d3d9.lib") #include <d3dx9.h> #pragma comment (lib, "d3dx9.lib") #pragma comment (lib, "winmm.lib") |
| Автор: Maks 11.8.2006, 18:53 |
| Интересно когда я закоментировал строки в <winnt.h> на которые ругался компилятор: #else #define DECLSPEC_DEPRECATED_DDK #define PRAGMA_DEPRECATED_DDK 0 #endif // // Void // typedef void *PVOID; //typedef void * POINTER_64 PVOID64; и далее : // // Define segement buffer structure for scatter/gather read/write. // typedef union _FILE_SEGMENT_ELEMENT { // PVOID64 Buffer; ULONGLONG Alignment; }FILE_SEGMENT_ELEMENT, *PFILE_SEGMENT_ELEMENT; то компилятор собрал прогу, но клиентскую область он просто сожрал оставил только синию полосу с кнопкой закрытия проги и ее название. |
| Автор: empter 11.8.2006, 22:39 |
| В списке Options -> ... -> VC++ Directories (include , lib files) подними строчку с platform SDK в самый верх, должно помоч а winnh.h измнять не стоит |
| Автор: Maks 11.8.2006, 23:35 |
| Увы они уже в самом верху. |
| Автор: Darhazer 13.8.2006, 23:34 | ||
| Плохо изменил _FILE_SEGMENT_ELEMENT Лучше просто typedef-а разбит:
|