PPC程序低版本到高版本移植的问题详解编程语言

开发环境:

 1.vs2005

 2.Windows mobile  2003/5.0
注意:

1.打开VS2005->项目属性->c/c++->代码产生->Buffer Security Check ->NO/(GS)

然后编译,成功.

不打开(激活)缓冲保护,可以顺利在VS2005中编译先前的EVC代码.

因为基于CE4.2 (WM2003)系统里没有安全函数,而VS2005默认/GS编译先项

是打开的,主要是为了防止代码缓冲区益出,提高安全性。

所以我们要在VS2005中编译先前的EVC代码,可以用这种方法。但不推荐

,请用下面方法。
2。打开VS2005->项目属性->链接器->命令行->加入secchk.lib

然后编译,成功。

填加secchk.lib,就是为了在基于CE4.2 (WM2003)系统里填加了安全函数

不必关闭VS2005的/GS编译选项。虽然生成代码多了1K,但这也是值得的。

因为secchk.lib提高安全性,有效防止缓冲区益出。推荐用此方法在VS2005

编译基于CE4.2 (WM2003)的EVC代码。

 http://seraphim-zhai.spaces.live.com/blog/cns!B842D90502D29D25!287.entry

在msdn完整的说法是,建议在迁移evc的project时,
 Ignore Specific Library(忽略特定库) 加上 oldnames.lib
AdditionalDependencies(附加依赖项)加上 commctrl.lib coredll.lib aygshell.lib secchk.lib ccrtrtti.lib

其实针对wm5.0的做法是:
编译选择ARM4,可以不起用混合调用,然后linker中的Target Machine选择Not Set

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/18452.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论