vc6.0项目到vc2013移植记录

VC6.0项目在升级到vc2013时存在兼容性问题,包括字符串格式、消息响应函数、DLL链接、帮助文档编译等。解决方案包括:将CString转为char *,修改消息函数原型,重新编译DLL源码,解决hlp文档编译缺失的hcw.exe问题。通过这些步骤,可以逐步完成移植。
摘要由CSDN通过智能技术生成


     先来个总结,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 *,记得要将

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值