从eVC4升级到vs2005时遇到的问题及解决方法
2008-04-08 14:26
579 查看
[align=left]从eVC4升级到vs2005时遇到的问题及解决方法[/align]
[align=left]2007-03-03 00:18[/align]
[align=left]2007-03-03 00:18[/align]
[align=left]将一个eVC4读access的例子(M哥那个)转到VS2005时遇到的问题及解决方法。[/align] [align=left]转换的时候遇到一些问题,其中有几个小问题,是“C++ does not support default-int”,解决方法是:在函数前面加上“BOOL ”就可以了,如果是没有返回值的函数则再在函数尾加一个“return TRUE;”就OK啦。[/align] [align=left]例子:[/align] [align=left]CVOString::operator = (LPCTSTR pcszValue) //这里提示出错:C++ does not support default-int { m_dwLength = _tcslen(pcszValue); SetMinBufferSize(m_dwLength); _tcscpy(m_pBuffer, pcszValue); }[/align] [align=left]改为:[/align] [align=left]BOOL CVOString::operator = (LPCTSTR pcszValue) { m_dwLength = _tcslen(pcszValue);[/align] [align=left] SetMinBufferSize(m_dwLength); _tcscpy(m_pBuffer, pcszValue); return TRUE; }[/align] [align=left]另外还有一些问题,按照下面所说的方法解决的。转一篇好文章:[/align] [align=left]转自:[/align] [align=left]http://blog.csdn.net/wbcp2000/archive/2006/07/16/928868.aspx[/align] [align=left]-------------------------以下原文-------------------------------[/align] <!--[if !vml]--> <!--[endif]--> 如何将EVC4工程升级到VS.NET2005工程 [align=left]大家知道MOBIL5.0开始,EVC4开发的工程就无法进行DEBUG了,而必须使用VS.NET2005中的VC++来实现。但是以前我们费了很大心力做成的项目,也不能重新来写。[/align] [align=left]今天通过一上午的研究,将转化方法贴出来和大家共勉。[/align] [align=left] 这里我们以DIALOG BASED工程为例。首先用EVC4建立一个DIALOG BASED的POCKET PC 2003工程。此工程名我们暂定为TXDEMO。我们也可以在对话框放置一个BUTTON,在单击事件里,添加AfxMessageBox(L”Test”); 以便升级到VS.NET 2005后,测试资源对应情况。[/align] [align=left] 此时,保存TXDEMO工程,并关闭掉EVC4开发工具。此时用VS.NET 2005打开TXDEMO.VCW工程,并接受转换请求。此时并将编译环境切换到Windows Mobile 5.0 pocket pc sdk。编译工程,此时会提示如下错误:[/align] [align=left] [/align] [align=left]1>C:/Program Files/Microsoft Visual Studio 8/VC/ce/atlmfc/include/afxver_.h(77) : fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds[/align] [align=left] [/align] [align=left]这里我们通过打开Project properties对话框里,切换到C/C++->Code generation页,将Runtime Libarary 设置成“Multi-threaded DLL(/MD)”。即可解决此问题。[/align] [align=left] [/align] [align=left]接着编译工程,此时会提示如下错误:[/align] [align=left]1>./TXDEMO.rc(170) : fatal error RC1015: cannot open include file 'wceres.rc'.[/align] [align=left] [/align] [align=left]这里我们需要在TXDEMO.RC文件里,将#include "wceres.rc"注释掉。[/align] [align=left]//#include "wceres.rc" // WCE-specific components[/align] [align=left] [/align] [align=left]接着编译工程,此时会提示如下错误:[/align] [align=left]1>corelibc.lib(wwinmain.obj) : error LNK2019: unresolved external symbol wWinMain referenced in function wWinMainCRTStartup[/align] [align=left]1>Windows Mobile 5.0 Pocket PC SDK (ARMV4I)/Debug/TXDEMO.exe : fatal error LNK1120: 1 unresolved externals[/align] [align=left]此时,我们依旧打开project properties对话框,切换到Linker->Advanced页,将Entry Point由wWinMainCRTStartup改成WinMainCRTStartup。[/align] [align=left] [/align] [align=left]此时再次编译,系统不在提示错误,但是编译好的程序,还不能在模拟器或者MOBILE5.0 POCKET PC的机器上运行。[/align] [align=left] [/align] [align=left]我们接着设置项目属性,在Configuration Properties->Gengeral页将Use of MFC ,改成静态连接。[/align] [align=left] [/align] [align=left]此时我们运行程序 ,您会发现程序启动后,就立刻退去。经过我的研究,发现是加载对话框资源失败,在此我们再此打开TXDEMO.RC源文件,[/align] [align=left]找到IDD_TXDEMO_DIALOG DIALOG DISCARDABLE 0, 0, 130, 90语句,将下面的窗体属性改成如下,即可。[/align] [align=left]WS_POPUP | WS_VISIBLE | WS_CAPTION [/align] [align=left]此时,再次编译工程,你可以进行DEBUG并可以运行程序。[/align] [align=left]这是我对EVC4升级到VS.NET 2005一点总结,其中参考了MSDN中一些文档,但是MSDN说的还不够详细,通过我自己的研究,总结出一点经验,希望能给大家带来方便,谢谢。[/align] [align=left] eric.wong[/align] [align=left]msn:wbcpcpwb@hotmail.com[/align] [align=left]Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=928868[/align] [align=left]----------------------------原文完------------------------------[/align] [align=left] [/align] |
相关文章推荐
- evc升级到vs2005遇到的一些问题以及解决的方法
- VC6 和 VS2003 转换到VS2005 时可能会遇到的问题以及解决方法
- QT项目升级(QT4.6.3到QT5.2)时,遇到的问题和解决方法
- 升级到appcompat v7 21.0.2之后遇到的问题解决方法
- QT项目升级(QT4到QT5)时,遇到的问题和解决方法
- 升级ZC451 codebase遇到的问题以及解决方法
- 代码从VS2003升级到VS2005的编译链接问题及解决方法
- QT项目升级(QT4.6.3到QT5.2)时,遇到的问题和解决方法
- centos 6.5t升级python注意事顶及遇到问题的解决方法
- Spring4.1.1升级到4.3.9遇到的问题与解决方法
- 从 .net 1.1 升级到 2.0过程中遇到的问题及解决方法
- 个人总结:AS升级到3.0后遇到的问题及解决方法
- Struts2 漏洞:Struts2.2.1版本紧急升级Struts2.3.15.1版本中遇到问题和解决方法,你中招了没?!
- QT项目升级(QT4.6.3到QT5.2)时,遇到的问题和解决方法
- 从 .net 1.1 升级到 2.0过程中遇到的问题及解决方法
- centos 6.2升级6.5遇到的问题及解决方法
- 从 .net 1.1 升级到 2.0过程中遇到的问题及解决方法
- 从 CCS 1.1 升级到 CS 2.0 所遇到的问题和部分解决方法
- QT4项目升级到QT5遇到的问题和解决方法
- 升级iOS7遇到问题This device isn't eligible for the requested build的解决方法