リモート Firebird データベースにアクセスする Windows CE 上で実行するアプリケーションを開発する必要があります。そのために Delphi を使用したいと考えています。出来ますか?
4 に答える
ネイティブ Delphi は、x86 互換プロセッサと Win32/Win64 または MacOS 10 API でのみ動作します。
Ken White はすでに Delphi Prism を指摘しましたが、それを購入する場合は、再マークされたツールではなく、元の製品を購入することをお勧めします。1 つではなく複数のプラットフォームのサポートが付属していると聞きました。RemObjects Oxygeneはオリジナル製品で、その一部が Prism として再販されています。
別のオプションは、Lazarus (vanilla または CodeTyphon ディストリビューション) を使用することです。その LCL ライブラリは多くの点で VCL を模倣しており、FPC コンパイラは Delphi 言語 (および他のいくつかの Pascal 方言も同様) を模倣しています。
実際、Delphi IDE を使用して、 KOL-CEライブラリを使用して Windows CE アプリケーションをビルドできる場合があります。
KOL-CE - キー オブジェクト ライブラリ CE は、Free Pascal Compiler を使用して強力な (しかしコンパクトな) Windows CE/Pocket PC/Windows Mobile/Win32 GUI アプリケーションを開発するためのオブジェクトのセットです。このライブラリは、Vladimir Kladov ( http://kolmck.net )による KOL ライブラリに基づいています。
これは Lazarus IDE を対象としていますが、Delphi プロジェクトのフォークであるため、おそらくいくつかの変更を加えれば、Delphi IDE で使用できる可能性があります。また、必要な変更を行うことができない場合 (または時間がない場合) は、別の言語に切り替える代わりに、Lazarus IDE と最新のオブジェクト パスカルを喜んで使用できると確信しています。
WinCE 実行可能ファイルをコンパイルするには、Win32 用の FPC arm-wince クロス コンパイラをインストールする必要がありますが、IDE を使用して Windows でアプリケーションを開発します。
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 には、現在の (しかしはるかに進化した) Oxygene .NET/Java プラットフォームよりも Delphi 言語との互換性が高い Delphi .NET コンパイラが含まれていたためです。 Delphi 言語の実装。
Delphi 2007 の時点で、Delphi .NET コンパイラは廃止されました。
現在、Oxygene は Delphi .NET よりも幅広い言語とプラットフォーム機能をサポートしているため、はるかに優れています。Delphi 言語との互換性は低くなります。これは、Delphi 言語がサポートするプラットフォームが、実際には非常に有用ないくつかの言語の逸脱を保証しているためです。
Oxygene は、個別に(完全な機能セットを含む)、および Delphi Prism(.NET 部分のみを含む)として出荷されます。
Delphi 2005/2006 では、Jeremy North のCF ビルド ヘルパーと、私が書いたクラス ヘルパーが必要でした(これらは CF ビルド ヘルパーに含まれています)。両方の使用方法に関する優れた記事が EDN にあります。
Delphi 言語に非常に近い言語が必要な場合は、Oxygene を使用する方がはるかに賢明です。
Pascal および Delphi に似た言語の歴史的な概要については、Jim McKeeth によるこの記事を参照してください。