5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DelphiAdvent Calendar 2024

Day 12

【Delphi】Delphi 2009 について

Last updated at Posted at 2024-12-11

はじめに

『Delphi 2009』 についての概要です。

image.png

概要

製品概要です。

項目 説明
製品名 Delphi 2009
コードネーム Tiburón
発売年 2008
発売元 Embarcadero Technologies
ビルドバージョン 12.0
コンパイラバージョン 20.0
BDS バージョン 6.0
サポートプラットフォーム Windows

前バージョンとの違い

  • Unicode 対応
  • 標準の string が UnicodeString になった
  • ジェネリックスが追加された (Win32 では初)
  • ジェネリックリスト (TList<T>) やコレクションが使えるようになった
  • 無名メソッドが使えるようになった
  • メソッド参照型が使えるようになった
  • 任意の型の「空の値」または「ゼロ値」または「ヌル値」を返すジェネリック型関数 Default() が使えるようになった (Win32 では初)
  • 標準で PNG 形式の画像を扱えるようになった
  • リボンコントロールが追加された
  • TEncoding が使えるようになった
  • TStringBuilder が使えるようになった
  • TSemaphore が使えるようになった
  • 結果パラメータを伴う Exit() が使えるようになった
  • 無名メソッドに対応した Synchronize() が使えるようになった
  • 演算子のオーバーロードで In()Include() および Exclude() が使えるようになった
  • {$POINTERMATH ON} コンパイラ指令を使って、型付きポインタに対するポインタ演算が行えるようになった
  • {$SCOPEDENUMS ON} コンパイラ指令を使って、スコープのある列挙型を作る事ができるようになった
  • ANSI を扱うための AnsiStrings ユニットが追加された
  • ビルド構成を [プロジェクトマネージャ] から切り替えられるようになった
  • リソースファイルをプロジェクトで管理できるようになった ([プロジェクト | リソース])
  • [ツールパレット] に検索ウィンドウが付いた
  • TRichEdit がラップしている RichEdit (Riched20.dll) が変更になった (Delphi 2007 以前は Riched32.dll をラップしていた)

その他

  • 最初の Unicode 系 Delphi
  • 生成された実行形式バイナリが Win9x 系や Windows 2000 よりも前の NT 系で動作しない可能性が高い
  • クラスヘルパを使うと裏技的にクラスの private メンバにアクセスできるようになった
  • 以降『Quick Report』は付属しない
  • クラスエクスプローラが復活した
  • Unicode に対応したリソースコンパイラ CGRC.EXE が付属するようになった
  • IDE 環境設定のレジストリエントリは HKEY_CURRENT_USER\Software\CodeGear にある
  • 以降、DBX を利用する場合、Profession 版でのリモート接続がライセンス違反となる
  • TBitmap にバッファオーバーフローの脆弱性がある
  • CodeGear が Embarcadero に買収された
  • 2008 年には『Windows XP』の Service Pack 3 がリリースされています
  • 2008 年は初代『Android』端末が発売された年です

image.png

アプリケーションを Unicode 化するために必要な情報

過去、アプリケーションを Unicode 化するために必要な情報の詰まった記事が EDN にありました。現在 Suppport Wiki にはそれらの記事が転載されています。

どうしても ANSI 版 Delphi からの移植が難しいコードがあるのなら「MECSUtils」を使ってみてください。

おわりに

待望の Unicode 系 Delphi の登場です。バグが多めなので、次バージョンの『Delphi 2010』以降を使った方がいいと思います。

Delphi 2009 よりも前での Unicode アプリケーション

Delphi 2009 よりも前で Unicode アプリケーションを作るには、TntWare の『TNT Unicode Control』を使う必要がありました。『TNT Unicode Control』は Delphi 6 以降 (旧バージョンは Delphi 5 以降) で使う事ができます。

『TNT Unicode Control』は無償だったのですが、2007/03 頃 TMS Software に買収され『TMS Unicode Component Pack』という有償の製品になりました。有償になる前の『TNT Unicode Control』は GitHub で公開されています。

See also:

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?