今天看啥
热点:

vc6.0项目到vc2013移植记录,vc6.0vc2013



先来个总结,VC6.0单向升级到vc2005以后版本,并不能完全兼容,主要分为以下五种情况:
①最常见的字符串格式问题

②消息响应函数原型发生了改变

③附带着的VC6.0编译来的DLL也要移植到vs2013下进行重新编译,方可正常链接。

④如果是商业项目(现在我移植的这个就是),一般还会有hlp文档,会提示缺少hcw.exe文件

下面是解决方案:

一、CString->char *转换:

	CString m_Head;
	char *codefile;
	codefile=(LPSTR)(LPCTSTR)m_Head;

二、消息原型发生改变:

相应的提示信息诸如:static_cast” : 无法从“void (__thiscall CMainFrame::* )(NMTOOLBARA *,LRESULT *)”转换为“void (__thiscall CCmdTarget::* )(NMHDR *,LRESULT *);

首先我们把第一个参数改为NMHDR *,记得要将声明和定义都改了,然后在里面进行

NUMTOOLBARA *toolbar=reinterpret_cast nmhdr;

的强制转换,其他代码就无须更改了。

三、报错信息就是链接错误

\源码也拿过来重新编译。

四、提示的错误信息和hcw.exe缺少有关的话,就下载下面附件的压缩包,解压后,将文件夹路径添加到PATH。

这样会有错误的弹窗出现,但不用管它,至少可以进行往下的编译了。

https://download.csdn.net/detail/tianyuan521521/8576037




www.513bk.comtruehttp://www.513bk.com/VCjc/1237381.htmlTechArticlevc6.0项目到vc2013移植记录,vc6.0vc2013 先来个总结,VC6.0单向升级到vc2005以后版本,并不能完全兼容,主要分为以下五种情况: ①最常见的字符...

相关文章

相关搜索: 项目

帮客评论

视觉看点