2011-01-27 19 views
2

64ビット版のDelphiがリリースされると(2012年のことですか?)、コンポーネントはどのように機能しますか?Delphi 64bit:コンポーネントの互換性?

私はいくつかの第三者コンポーネントを使用しています:つまり、自動的に64ビットで動作するかどうかですか?彼らはコンポーネントの2つの別バージョンをリリースする必要がありますか?

答えて

4

先を見ているベンダーは、64ビットFreePascalでコード(可能な限り)をテストし始めています。一般的に、あなたの質問に対する答えは、コンポーネント固有のです。ポインタが広範囲に使用される場合、またはハードウェアが関与する場合、コードの適合が必要となります。それ以外の場合は、64ビットの再コンパイルに大きな問題はありません。

はい、いずれの場合も、ネイティブコードでは別々のバージョンのコードが必要です。

+0

誰もが、私はこれが最も完成しているので、これを選択します。みなさん、ありがとう。 – LaBracca

5

Delphi 2009のUnicode版の最初のリリースと比較することができると思います。Delphi 2009が出てきたら、サードパーティのコンポーネントベンダーはすべてUnicode対応のコンポーネントをかなり早く提供しました。多くの人がリリース時にコンポーネントを用意していました。

多くの点で、サードパーティのコンポーネントがUnicodeをサポートするために必要な変更は、64ビットで必要とされるよりも煩わしいものと思われます。サードパーティのベンダーはすでに先読みしており、NativeIntNativeUIntのタイプを使用しています。

異なるバージョンについては、サードパーティのコンポーネントベンダーの通常のプラクティスは、サポートされているすべてのプラットフォームでソースコードをコンパイルすることです。パッケージを使用している場合は、コンパイラごとに異なるバージョンが必要ですが、今日でも同様です。コンポーネントは、サポートされている各Delphiバージョンごとにパッケージとともに提供されます。

私が強調したいのは、Unicode Delphiにまだ移動していない場合は、できるだけ早くそれを行うことです。これを行わずに64ビットバージョンのDelphiに移行することはできません。また、Unicode Delphiに移植することができます。

要するに、私はこの問題についてほとんど心配していません。

+0

私はそれが非常に小さな調整になると信じています。 AnsiからUnicodeへの変更は、整数サイズの変更が破られるよりもずっと多くのコードを破った。 –

+0

@warren整数のサイズは変更されません。ポインタサイズのみ。それは重要な区別です。 –

+0

枢機卿は変わるでしょうか? –

5

要するに、x64 Delphiではコンポーネントが自動的に機能するかもしれませんが、ポインタやアセンブリ言語を使用する場合は、ほとんどが変更が必要になる可能性があります。

デルファイのチームは、できるだけスムーズにアップグレードするよう努めています。
しかし、x64のようなUnicodeは大きな変化であるため、コンポーネントのアップデートも準備してください。

通常、プラットフォームベンダーは第三者ベンダーに一般市民の前で簡単に説明し、サードパーティ製品を新しいプラットフォームバージョンと互換性のあるものにする時間があります。

マイクロソフトではこれを.NETで行っていますが、DelphiチームはUnicodeと.NETでこれを行っています。他のベンダーも同様のことを行っています。

第三者のライブラリベンダーは、Free Pascalのx64バージョンを使用して、変更が必要なことを感じることができました。

ソースコードを見ると、実際には一部のベンダーが行っていることがわかります。

あなた自身も変更を感じることができます。

たとえば、Allen Bauerは、his bloghis twitter feedを使用して、x64 Delphiに関する情報を投稿します。彼はまた、Delphi.org podcast interviewのDelphi x64についても話しました。

Embarcaderoでは、ロードショーや会議中に、last virtual CodeRage conferenceを含むDelphi x64コマンドラインコンパイラのアルファ版を公開しています。

--jeroen