是否可以使用Delphi XE2开发Windows CE应用程序?

是否可以使用Delphi XE2开发Windows CE应用程序?,delphi,windows-ce,delphi-xe2,Delphi,Windows Ce,Delphi Xe2,我必须开发一个应用程序,在Windows CE上运行,以访问远程Firebird数据库。 我想用Delphi来做这件事。 可能吗?不,不可能。Delphi XE2为Win32/64和OS X(以及在FreePascal和iOS的帮助下)提供应用程序,但不为CE提供应用程序 您可能可以使用Delphi Prism来实现这一点。在SO这里有一个单独的delphi prism标记。本机delphi仅适用于x86兼容处理器和Win32/Win64或MacOS 10 API Ken White已经向您指出

我必须开发一个应用程序,在Windows CE上运行,以访问远程Firebird数据库。 我想用Delphi来做这件事。
可能吗?

不,不可能。Delphi XE2为Win32/64和OS X(以及在FreePascal和iOS的帮助下)提供应用程序,但不为CE提供应用程序


您可能可以使用Delphi Prism来实现这一点。在SO这里有一个单独的
delphi prism
标记。

本机delphi仅适用于x86兼容处理器和Win32/Win64或MacOS 10 API

Ken White已经向您指出了Delphi Prism,但是如果您购买它,而不是重新标记工具,您可能会购买原始产品,我听说它提供了多个平台支持,而不是一个。是原始产品,其中一部分作为Prism重新销售

另一种选择是使用Lazarus(香草或CodeTyphon发行版)。它的LCL库在许多方面模仿VCL,FPC编译器模仿Delphi语言(以及其他一些Pascal方言)


事实上,经过一些修改后,您可以使用Delphi IDE使用库构建Windows CE应用程序

KOL-CE-Key Objects Library CE是一组使用免费Pascal编译器开发功能强大(但紧凑)的Windows CE/Pocket PC/Windows Mobile/Win32 GUI应用程序的对象。该库基于Vladimir Kladov()的KOL库

它的目标是Lazarus IDE,但由于它是Delphi项目的一个分支,所以您可能可以在Delphi IDE中使用它,可能需要经过一些修改。如果您不能(或没有时间)进行必要的修改,我相信您会很乐意使用Lazarus IDE和现代对象pascal,而不是切换到另一种语言

您需要安装适用于Win32的FPC arm wince交叉编译器来编译wince可执行文件,但您需要在Windows中使用IDE开发应用程序

请注意,KOL是一组全新的组件,与VCL非常不同。功能非常强大,但只能重用低级目标代码,因为它们与VCL(或Lazarus LVCL)不兼容


Windows CE也可以使用Lazarus及其本地LVCL组件,这与VCL类布局非常接近,但会产生比KOL-CE大得多的可执行文件。

从历史角度来看:从Delphi 2007开始,Delphi本身就无法实现

在Delphi 2005和Delphi 2006中可以做到这一点,在Windows CE上针对.NET Compact Framework,因为Delphi包含一个Delphi.NET编译器,该编译器比Delphi语言的当前(但更进化)Oxygene.NET/Java平台实现更兼容Delphi语言

从Delphi 2007开始,Delphi.NET编译器就退役了

目前,Oxygene比Delphi.NET更好,因为它支持更广泛的语言和平台特性。它与Delphi语言的兼容性较差,因为它所支持的平台保证了一些在实践中非常有用的语言偏差

Oxygene单独发布(具有完整的功能集)和作为Delphi Prism发布(仅包含.NET部分)

对于Delphi2005/2006,您需要Jeremy North提供的和我编写的类帮助程序(它们包含在CF构建帮助程序中)

考虑到你当时不得不经历的困难,如果你想要一种非常接近Delphi语言的语言,那么使用Oxygene就更明智了


有关Pascal和Delphi类语言的历史概述,请阅读。

使用KOL和FPC并不是使用XE2,这是问题的直接问题。您可以使用Delphi XE2作为IDE,然后使用FPC仅交叉编译到ARM目标。这就是KOL-CE的工作原理。我写道,因为KOL现在已经可以使用Unicode,所以可能KOL-CE可以适应Delphi XE2。也许已经是这样了,即使Lazarus现在是主要的IDE。如果KOL-CE被设计成模仿KOL,那么同一套MCK应该涵盖这两个方面吗?