我必须开发一个应用程序以在访问远程 Firebird 数据库的 Windows CE 上运行。我想使用 Delphi 来做到这一点。是否可以?
4 回答
本机 Delphi 仅适用于 x86 兼容处理器和 Win32/Win64 或 MacOS 10 API。
Ken White 已经向您指出了 Delphi Prism,但是如果您购买它,而不是重新标记的工具,您可能会购买原始产品,我听说它支持多个平台而不是一个。RemObjects Oxygene是原始产品,其中一部分作为 Prism 转售。
另一种选择是使用 Lazarus(香草或 CodeTyphon 发行版)。它的 LCL 库在许多方面模仿 VCL,FPC 编译器模仿 Delphi 语言(以及其他一些 Pascal 方言)。
不,不是。Delphi XE2 为 Win32/64、OS X (并在 FreePascal、iOS 的帮助下)提供应用程序,但不适用于 CE。
您可能可以使用 Delphi Prism 来执行此操作。在 SO有一个单独的delphi-prism
标签。
事实上,经过一些修改,您或许可以使用Delphi IDE 构建Windows CE 应用程序,使用KOL-CE库。
KOL-CE - 关键对象库 CE 是一组对象,用于使用 Free Pascal 编译器开发功能强大(但紧凑)的 Windows CE/Pocket PC/Windows Mobile/Win32 GUI 应用程序。该库基于 Vladimir Kladov ( http://kolmck.net ) 的 KOL 库。
它以 Lazarus IDE 为目标,但由于它是 Delphi 项目的一个分支,您也许可以在您的 Delphi IDE 中使用它,也许经过一些修改。如果您不能(或没有时间)进行所需的修改,我相信您会很高兴使用 Lazarus IDE 和现代对象 pascal,而不是切换到另一种语言。
您需要为 Win32 安装 FPC arm-wince 交叉编译器以编译 WinCE 可执行文件,但您在 Windows 中使用 IDE 开发应用程序。
请注意,KOL 是一组轻量级的新组件,与 VCL 非常不同。非常强大,但只能重用低级目标代码,因为它们与 VCL(或 Lazarus LVCL)不兼容。
使用 Lazarus 及其原生 LVCL 组件也可用于 Windows CE,非常接近 VCL 类布局,但会产生比 KOL-CE 更大的可执行文件。
从历史的角度来看:不,您不能在 Delphi 2007 中使用 Delphi 本身。
在 Delphi 2005 和 Delphi 2006 中可以做到这一点,针对 Windows CE 上的 .NET Compact Framework,因为 Delphi 包含一个 Delphi .NET 编译器,它比当前(但更进化)的 Oxygene .NET/Java 平台更兼容 Delphi 语言Delphi语言的实现。
自 Delphi 2007 起,Delphi .NET 编译器已退役。
现在,Oxygene 比 Delphi .NET 支持的语言和平台功能更广泛,因此要好得多。它与 Delphi 语言的兼容性较差,因为它支持的平台保证了一些在实践中非常有用的语言偏差。
Oxygene 单独发布(带有完整的功能集)和 Delphi Prism(仅带有 .NET 部分)。
对于 Delphi 2005/2006,您需要 Jeremy North 的CF Build Helper和我编写的 Class Helper(它们包含在 CF Build Helper 中)。EDN 上有一篇关于如何使用两者的好文章。
考虑到您当时必须经历的喧嚣,如果您想要一种非常接近 Delphi 语言的语言,使用 Oxygene 会更明智。
有关 Pascal 和 Delphi 类语言的历史概述,请阅读Jim McKeeth 的这篇文章。