如何将 MFC 应用程序移植到 Windows Embedded Compact 7?

Posted

技术标签:

【中文标题】如何将 MFC 应用程序移植到 Windows Embedded Compact 7?【英文标题】:How to port a MFC application to Windows Embedded Compact 7? 【发布时间】:2012-11-03 10:10:41 【问题描述】:

我正在尝试将 MFC 应用程序移植到嵌入式嵌入式 7 中。我将 MFC 应用程序作为子项目添加到我使用 Visual Studio 2008 中的平台构建器创建的操作系统设计中。但出现以下错误。

致命错误:C:\Program Files\Microsoft Visual Studio 9.0\VC\ce\atlmfc\include\atlconv.h(695):错误 C2039:“lstrlenW”:不是“ATL”的成员 NMAKE:致命错误 U1077:'"C:\Program Files\Microsoft Visual Studio 9.0\VC\VCPackages\VcBuild.exe"':返回代码 '0x1'

有没有办法解决这个问题??

经过进一步搜索,我发现了一个博客,说明...

支持 MFC 和 ATL。但是,目前存在一个 Microsoft 错误,该错误会导致在 Windows CE 7 多核系统上运行此类使用 MFC 或 ATL 的应用程序时出现问题。为避免出现问题,您需要为 Windows CE 6 配置链接器。 转到“项目->属性” 现在选择:配置“属性->链接器->命令行” 如果已经有“/Subsystem”参数删除它 添加以下字符串:/subsystem:windowsce,6.00

但即使遵循该错误仍然存​​在......

请提出解决此问题的建议..

提前致谢。

【问题讨论】:

【参考方案1】:

您需要为 Visual Studio 2008 SP1 安装 Windows Embedded Compact 7 ATL 更新。 它来自 Microsoft 作为 .MSI 安装程序。

http://www.microsoft.com/download/en/details.aspx?id=27729

并修改您的项目以包含“其他包含目录”-

X:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce7\atlmfc\include
X:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce7\include

这为我解决了问题;我正在为 AMC_MkII (ARMv4I) 构建

【讨论】:

以上是关于如何将 MFC 应用程序移植到 Windows Embedded Compact 7?的主要内容,如果未能解决你的问题,请参考以下文章

支持 ARM 上的 Windows 10 桌面应用程序 - MFC 和 COM 和 OPOS 是不是有效?

将 UNIX 守护程序移植到 Windows 服务

将类从 MFC 移植到 C++ 控制台应用程序。使用 /MD[d](CRT dll 版本)构建 MFC 应用程序需要

如何将使用 tchar.h 处理 unicode 的 Windows C++ 移植到 iOS 应用程序

如何将此程序从 conio 移植到 curses?

如何将 RPC XDR 从 UNIX 移植到 Windows? [关闭]