1

我想为一个开源的 Windows Mobile 项目做出贡献,但它是在 eVC 4.0 中开发的,这在 Vista 上完全不起作用(请随时纠正我!),我宁愿避免不得不双重启动或远程进入我唯一剩下的 XP 盒子。我在我的主要开发机器上安装了 VS 2008,并获得了所有的 SDK 等。我需要做 WM 工作。但!一旦我将所有源代码放在一起并开始尝试构建它,我必须进行大量更改以支持已弃用的方法和一些已移动的标头。

理想情况下,我希望能够“就好像”我正在运行 eVC 一样处理该项目。是否有某种“怪癖模式”可以让我在 VS 2008 中模拟 eVC 行为?如果没有,是否有将应用程序从 eVC 移植到 VS 的指南?

4

1 回答 1

1

不,没有允许它的模式。Studio '08 使用与 eVC 不同的(实际上要好得多)编译器,因此 eVC 让 Studio 无法使用的某些东西。一般来说,来自 Studio 的代码可以在 eVC 下运行。

现在,如果您使用的是 MFC,那就完全不同了。eVC 下的 MFC 和 Studio 下的 MFC 有很大不同,并且在某些情况下(如 CString)只是表现不同(eVC 中的类,Studio 中的模板),特别是如果对象一开始就没有“正确”使用。撤消这可能是一个巨大的混乱。

不推荐使用的方法可以包装在抽象方法中,以便在 Studio 下代码以一种方式路由,而在 eVC 下它以另一种方式路由。在不知道具体是什么方法的情况下,您很难给出更详细的建议。

移动的文件应该不是问题。将包含目录添加到项目中。您当然不应该在代码文件本身中有指向标头的路径。

编辑:最后一点,Studio 通常不擅长导入 eVC 项目,因此您也很可能在迁移过程中丢失了预编译器指令和类似的东西。缺少#defines 肯定会使移植更具挑战性,因此请检查在 eVC 中定义的所有内容是否仍在 Studio 中定义。还要注意任何子系统定义。Studio 也喜欢忘记导入它。

于 2009-01-15T16:12:32.167 回答