江湖救急,NET惹的祸,在线等
环境:WINXP+vc6.0+EVC4.0+vs2005,使用其中的smart device进行WIN CE开发
问题:
1。新建一个smart device 项目,使用_tcslen()函数出问题:error C2668: 'wcslen' : ambiguous call to overloaded function,其他项目(win32,mfc)中正常
2。所有项目新建后*.rc文件打不开(在vs2005中双击*.rc,MFC中向导DIALOG都不行,但运行正常,而我需要修改界面啊),提示opened in another editor
3。用MFC向导新建DIALOG项目,退出向导后出现:类不能支持automation操作,但运行正常
4. 使用了WTL,提示:
_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
_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.
_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.
如有相关的。NET环境设置(WIN CE),WTL的使用方面资料,不胜感激
问题点数:0、回复次数:3Top
1 楼lawyu(雨淋漓)回复于 2005-01-02 23:51:43 得分 0
不熟悉这个,在这里学习Top
2 楼ietj(萧枫)回复于 2005-01-03 00:14:56 得分 0
第一个问题是:
有两个目录下存在此函数:(预处理宏位_UNICODE,UNICODE)
c:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\PocketPC2003\Include\stdlib.h(139): could be 'size_t wcslen(const wchar_t *)'
c:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include\atlosapice.h(592) 'size_t ATL::wcslen(const wchar_t *)' (使用了WTL的缘故)
请问怎样解决
Top
3 楼somedummy(某人马甲)回复于 2005-01-03 12:00:02 得分 0
1、不会吧?这两个怎么会二义啊?
你是不是使用了using namespace ATL?你应该明确限定使用哪个函数,如果要用CE的SDK里面的话,就加上::修饰_tcslen,如果你要用ATL里面的,那就加上ATL::修饰
2、你试试看把所有打开的编辑器都关掉,然后重新打开,不行的话就关闭工程,重新载入
3、这个不太清楚,自动化好像n年不提了
4、这个就是宏方面的东西,只要能正常运行不管它也可以Top




