我用的板子是2416,想在wince5下编写串口收发数据的程序,找啦个天嵌的串口调试程序的源码,在电脑上编译啦一下,有好多错误,都是头文件的错误,
1>------ Build started: Project: u, Configuration: Debug SMDK2416 (ARMV4I) ------
1>Compiling...
1>Serial_Test.cpp
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(925) : error C2039: 'GetSystemDefaultLCID' : is not a member of '`global namespace''
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(925) : error C3861: 'GetSystemDefaultLCID': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlconv.h(175) : error C2065: 'CP_ACP' : undeclared identifier
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlconv.h(612) : error C3861: 'MultiByteToWideChar': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlconv.h(631) : error C3861: 'WideCharToMultiByte': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlconv.h(973) : error C3861: 'MultiByteToWideChar': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlconv.h(983) : error C3861: 'MultiByteToWideChar': identifier not found
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(965) : error C2365: 'MultiByteToWideChar' : redefinition; previous definition was 'formerly unknown identifier'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(978) : error C2365: 'WideCharToMultiByte' : redefinition; previous definition was 'formerly unknown identifier'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1277) : error C2365: 'GetSystemDefaultLCID' : redefinition; previous definition was 'formerly unknown identifier'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1433) : error C2143: syntax error : missing ';' before '__cdecl'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1433) : error C2377: 'BOOL' : redefinition; typedef cannot be overloaded with any other symbol
1> G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\windef.h(159) : see declaration of 'BOOL'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1436) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1439) : error C2143: syntax error : missing ';' before '__cdecl'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1439) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1439) : error C2371: 'BOOL' : redefinition; different basic types
1> G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1433) : see declaration of 'BOOL'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\winnls.h(1442) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlmem.h(102) : error C2146: syntax error : missing ';' before identifier 'bSuccess'
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlmem.h(102) : error C2065: 'bSuccess' : undeclared identifier
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlmem.h(137) : error C2146: syntax error : missing ';' before identifier 'bSuccess'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(162) : error C2146: syntax error : missing ';' before identifier 'fItalic'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(162) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(162) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(163) : error C2146: syntax error : missing ';' before identifier 'fUnderline'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(163) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(163) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(164) : error C2146: syntax error : missing ';' before identifier 'fStrikethrough'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(164) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(164) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(457) : error C2061: syntax error : identifier 'BOOL'
1>G:\Program Files\Windows CE Tools\wce500\SMDK2416\include\ARMV4I\olectl.h(459) : error C2061: syntax error : identifier 'BOOL'
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlcommem.h(114) : error C3861: 'MultiByteToWideChar': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlcommem.h(133) : error C3861: 'WideCharToMultiByte': identifier not found
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2240) : error C2146: syntax error : missing ';' before identifier 'GetEnvironmentVariable'
1> G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2548) : see reference to class template instantiation 'ATL::CStringT<BaseType,StringTraits>' being compiled
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2240) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2241) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2263) : warning C4183: 'GetEnvironmentVariable': missing return type; assumed to be a member function returning 'int'
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2266) : error C2146: syntax error : missing ';' before identifier 'LoadStringW'
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2266) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2267) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2275) : warning C4183: 'LoadStringW': missing return type; assumed to be a member function returning 'int'
1>G:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\cstringt.h(2278) : error C2146: syntax error : missing ';' before identifier 'LoadStringW' 
我发现我找到的所有串口程序编译出来,都是这些错误,是我的2416sdk中的头文件winnls.h出问题了吗?还是咋啦,牛人帮忙解释一下吧,谢谢啦