急!TCPMP在WINCE6.0下编译出现字符集错误

snowseaman   2009-9-1 18:50 楼主
WINVER not defined. Defaulting to 0x0400, which is appropriate for all supported Windows CE versions
1>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C2143: syntax error : missing ',' before '&'
1>_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
1> _CE_ACTIVEX could be caused to be defined by defining _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA, but it is recommended that this be done only for single-threaded apps.
1>_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.

1>.\win32\playlst.cpp(75) : error C2440: 'initializing' : cannot convert from 'const wchar_t [12]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(76) : error C2440: 'initializing' : cannot convert from 'const wchar_t [14]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(77) : error C2440: 'initializing' : cannot convert from 'const wchar_t [19]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(78) : error C2440: 'initializing' : cannot convert from 'const wchar_t [17]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(79) : error C2440: 'initializing' : cannot convert from 'const wchar_t [15]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(117) : error C2664: 'GetModuleHandleW' : cannot convert parameter 1 from 'const tchar_t *' to 'LPCWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(118) : error C2664: 'GetModuleFileNameW' : cannot convert parameter 2 from 'tchar_t *' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(119) : error C2665: 'wcsrchr' : none of the 2 overloads could convert all the argument types
1>        c:\wince600\public\common\sdk\inc\stdlib.h(179): could be 'const wchar_t *wcsrchr(const wchar_t *,wchar_t)'
1>        c:\wince600\public\common\sdk\inc\stdlib.h(198): or 'wchar_t *wcsrchr(wchar_t *,wchar_t)'
1>        while trying to match the argument list '(tchar_t *, char)'
1>.\win32\playlst.cpp(128) : error C2664: 'GetModulePath' : cannot convert parameter 1 from 'TCHAR [256]' to 'tchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(164) : error C2440: 'type cast' : cannot convert from 'tchar_t *' to 'CString'
1>        No constructor could take the source type, or constructor overload resolution was ambiguous
1>.\win32\playlst.cpp(216) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(217) : error C2664: 'wcscmp' : cannot convert parameter 1 from 'tchar_t [256]' to 'const wchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(218) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(226) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(227) : error C2664: 'wcscmp' : cannot convert parameter 1 from 'tchar_t [256]' to 'const wchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(228) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(232) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(233) : error C2664: 'wcscmp' : cannot convert parameter 1 from 'tchar_t [256]' to 'const wchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(234) : error C2440: '=' : cannot convert from 'tchar_t [256]' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(281) : error C2440: '=' : cannot convert from 'tchar_t *' to 'LPWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>.\win32\playlst.cpp(282) : error C2664: 'wcslen' : cannot convert parameter 1 from 'const tchar_t *' to 'const wchar_t *'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>openfile_win32.cpp
上面红的错误是怎么回事,系统自己的怎么会出错呢.
下面的一些错误是在编译TCPMP时,其INTERFACE界面出现的大量错误,我有5.0下的EVC,编译没有任何问题,但用VS2005出现了.请教下大概在什么方向..谢谢!

回复评论 (22)

引用: 引用 10 楼 shuilingshenjun 的回复:
TCPMP中,出现错误:
Unexpected program failure. Please send "crash.txt" to the developers. Program will now exit.
咋整?


这是将TCPMP移植到CE6.0上必然遇到的问题
点赞  2009-9-7 17:11
关注,最近也在想在CE6上运行TCPMP。
点赞  2009-9-7 19:25
引用: 引用 8 楼 shuilingshenjun 的回复:
系统定制的字体很奇怪..我将字体设成OEM_CHARSET就OK了.

这么简单就解决了吗?
点赞  2009-9-8 09:06
还没有遇到过,学习学习,顶一个
点赞  2009-9-8 09:18
windows mobile 6 以上可不可以运行tcpmp啊
点赞  2009-9-8 09:35
我只是觉得奇怪,在EVC下,同样用的是UNICODE,好像也是正常的.前面的那两个错误怎么解决呢
点赞  2009-9-1 20:19
把const去掉就可以了
点赞  2009-9-1 21:28
这样 不可以吧,
这些程序在EVC下,是完全没有问题,我想都是用的UNICODE,只是在VS2005下的时候才有问题, 我不知道是不是少设置了什么
>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C2143: syntax error : missing ',' before '&'
这两个问题都不知道怎么昌出来了,
点赞  2009-9-2 10:00
tchar_t  是tcpmp自定义的 vs2005可能不认的  换成wchar_t 试试

反正都是unsighed short
点赞  2009-9-2 10:30
我刚照你说的那样更换了,能编译.但
>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\WINCE600\PUBLIC\COMMON\SDK\INC\winnt.h(790) : error C2143: syntax error : missing ',' before '&'
这两个问题都不知道怎么解决.
点赞  2009-9-2 18:20
把代码贴出来
错误很明显
cannot convert from 'const wchar_t [17]' to 'tchar_t *'
2005默认的是unicode编码
点赞  2009-9-1 19:00
这两个问题已经解决了,现在 有一个问题就是界面上的文字字母与数字是倒着显示的,汉字又能正常显示.不知道是怎么回事,

点赞  2009-9-2 20:30
系统定制的字体很奇怪..我将字体设成OEM_CHARSET就OK了.
点赞  2009-9-3 10:06
太扯把子了吧
点赞  2009-9-4 11:55
引用: 引用 11 楼 91program 的回复:
引用 10 楼 shuilingshenjun 的回复:
TCPMP中,出现错误:
Unexpected program failure. Please send "crash.txt" to the developers. Program will now exit.
咋整?


这是将TCPMP移植到CE6.0上必然遇到的问题


那请问怎么解决??????
点赞  2009-9-8 13:38
http://topic.eeworld.net/u/20090727/12/55229601-f0d2-48ed-9490-6da5909d7f4f.html
点赞  2009-9-8 16:12
提示: 作者被禁止或删除 内容自动屏蔽
点赞  2009-9-7 17:08
引用: 引用 18 楼 kieven2008 的回复:
http://topic.eeworld.net/u/20090727/12/55229601-f0d2-48ed-9490-6da5909d7f4f.html

此贴正解!
点赞  2009-9-9 12:40
TCPMP编译的时候有很多问题,有的是关联的库没有加载,基本上C的代码不用怎么改,汇编部分的代码要改很多,因为TCPMP是GNU ASM,evc或者vs2005用的是arm asm,里面差别不小。
我有编译成功的tcpmp源码,有机会可以交流一下
点赞  2009-9-8 15:24
12下一页
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复