はじめに
『Delphi 2009』 についての概要です。
概要
製品概要です。
| 項目 | 説明 |
|---|---|
| 製品名 | 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をラップしていた) - DataSnap (旧 MIDAS) から (D)COM 依存の機能が取り除かれた (Enterprise 以上)
- DataSnap RPC サーバーを作れるようになった
- DataSnap の配布ライセンスが不要になった
その他
- 最初の Unicode 系 Delphi
- 生成された実行形式バイナリが Win9x 系や Windows 2000 よりも前の NT 系で動作しない可能性が高い
- クラスヘルパを使うと裏技的にクラスの private メンバにアクセスできるようになった
- DVD 内に『InstallAware 7 R2 CodeGear Express Special Edition』が付属するようになった
- 以降『Quick Report』は付属しない
- クラスエクスプローラが復活した
- Unicode に対応したリソースコンパイラ
CGRC.EXEが付属するようになった - IDE 環境設定のレジストリエントリは
HKEY_CURRENT_USER\Software\CodeGearにある - 以降、DBX を利用する場合、Profession 版でのリモート接続がライセンス違反となる
- TBitmap にバッファオーバーフローの脆弱性がある
- CodeGear が Embarcadero に買収された
- 2008 年には『Windows XP』の Service Pack 3 がリリースされています
- 2008 年は初代『Android』端末が発売された年です
アプリケーションを Unicode 化するために必要な情報
過去、アプリケーションを Unicode 化するために必要な情報の詰まった記事が EDN にありました。現在 Suppport Wiki にはそれらの記事が転載されています。
- Delphi Unicode ワールド パート I: Unicode とは?なぜ必要なのか?そして、Delphi でどのような作業を行うのか? (Support Wiki)
- Delphi Unicode ワールド パート II: RTL の新機能と、Unicode をサポートするクラス (Support Wiki)
- Delphi Unicode ワールド パート III: コードを Unicode 対応にする (Support Wiki)
- Delphi 2009 と Unicode: Part I (Support Wiki)
- Delphi 2009 と Unicode: Part II (Support Wiki)
- Delphi 2009 と Unicode: Part III (Support Wiki)
- Delphi 2009とUnicode: 番外編(サロゲートペア)(Support 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:
- Delphi 2009 製品概要 (Embarcadero: Internet Archive)
- Delphi Prism 製品概要 (Embarcadero: Internet Archive)
- Delphi / C++Builder の新機能 (2007 以降) (Qiita)
- Delphi で生成された EXE が動作する Windows のバージョン (Qiita)
- Delphi におけるジェネリックプログラミング (Qiita)
- 【Delphi】文字列とファイルと複数行文字列 [小ネタ] (Qiita)
- 「MS Help 2.x ランタイムがインストールされていない」というエラーを解消する (Qiita)
- MECSUtils リファレンス (ht-deko.com)
- 正規表現の活用 (主に Delphi 2009 以降) (ht-deko.com)
- Delphi 2009 Handbook (Amazon)
- リッチ エディット コントロールについて (learn.microsoft.com)
- TRichEdit で英数字等のフォントが勝手に変わる (Delphi 2009 以降) (ht-deko.com)
- Delphi および C++ Builder における VCL Bitmap LoadFromFile の脆弱性について (Support Wiki)
- "EditorLineEnds.ttr"を作成できません。プロセスはファイルにアクセスできません。別のプロセスが使用中です。エラーが発生する (Support Wiki)
- オフラインインストール用に登録コードを取得する(RAD Studio/Delphi/C++Builder 2009からXE5まで) (Support Wiki)
- 手動アンインストール手順(RAD Studio 2009)(Supprt Wiki)
- TntWare Delphi Unicode Controls (Internet Archive: TntWare at 2007/02/06)
- TntWare Delphi Unicode Controls (Internet Archive: TntWare at 2007/04/05)
- Tnt Delphi UNICODE Controls Project (GitHub: @rofl0r)
- TMS Unicode Component Pack (TMS Software)
索引
[ ← Delphi 2007 ] [ ↑ 目次へ ] [ → Delphi 2010 ]

