ANSI 版 Delphi (5~2007) に最新版の Indy10 をインストールする

序論

 2009 へのインストール方法 は既に紹介しましたが、Indy のバージョンをすべての Delphi で揃えるというのは意味のある事かも知れないので、こちらもやってみる事にしました。

 FullD??.bat を使えば比較的簡単に作業できるのですが、すべての Delphi でインストールフォルダを揃える事を目的としていますので、この Tips ではバッチファイルは利用しません。

Indy 10 最新版 のインストール

 最近の Indy 最新版はバグも潰れて、ANSI 版 Delphi へもインストールが可能となっています。特に問題がない限り最新版を使うべきでしょう。互換性の問題等でトラブルが発生した場合のみ、ANSI 専用最終版の 10.2.3 をインストールするようにして下さい。

既存の環境のバックアップ

 この作業は Delphi 5 には不要です。Delphi 5 に Indy をインストールした事がある場合のみ行って下さい。

 バックアップフォルダを作成します。"C:\INDY_BACKUP" 等のフォルダを作成し、ここに

 という3つのフォルダを作成しておきます。

 次に Delphi を起動します。

Delphi 5
"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" /ns /np

Delphi 6
"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" /ns /np

Delphi 7
"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" /ns /np

Delphi 2005
"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi /ns /np

BDS 2006 / Turbo Delphi 2006
"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi /ns /np

Delphi 2007
"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi /ns /np

 Delphi が起動したら [コンポーネント | パッケージのインストール] で

バージョン パッケージ
Delphi 5 (なし)
Delphi 6 Internet Direct (Indy) for D6 Property and Component Editors
Delphi 7 Internet Direct (Indy) for D7 Property and Component Editors
Delphi 2005 ・Indy 10 Core Design Time
・Indy 10 Protocols Design Time
Delphi 2006
Delphi 2007

 上記パッケージを削除します。要は "Indy" と名の付くパッケージを削除すればいい訳です。削除が終わったら、[OK]ボタンを押し、Delphi を終了させます。

 Delphi の "<Delphiインストール先>\bin" フォルダに移動し、ここにある "Indy" と名の付くファイルをすべてバックアップフォルダの "bin" へ移動します。

 同じくDelphi の "<Delphiインストール先>\lib" フォルダに移動し、ここにある "Indy10" フォルダごとバックアップフォルダの "lib" へ移動します。"Indy10" フォルダがない場合には、"<Delphiインストール先>\lib" フォルダにある "Indy" と名の付くファイルと "Id" で始まるファイルをすべてバックアップフォルダの "lib" へ移動します。

 同じくDelphi の "<Delphiインストール先>\source" フォルダに移動し、ここにある "Indy" フォルダごとバックアップフォルダの "source" へ移動します。

"<Delphiインストール先>\Projects\Bpl" に Indy 関係のファイルがあれば、こちらはもれなく削除して下さい。

インストールフォルダの作成

 下記2つのフォルダを生成しておきます。これは、Indy 10 のインストール先をすべての Delphi で統一するためです。

 これで既存環境のバックアップが完了しました。

Indy 10 のダウンロード

Indy 10 のダウンロードは GitHub から行います。以前の SVN サーバーは使えなくなった模様です。

アーカイブの解凍と配置

 アーカイブを適当な場所に解凍したら、"<解凍先>\Indy10_????\Lib" に移動します。

 ここにあるフォルダの内、

 を、"<Delphiインストール先>\source\Indy\Indy10" へコピーします。

ライブラリパスの追加

 Delphi を起動します。

Delphi 5
"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" /ns /np

Delphi 6
"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" /ns /np

Delphi 7
"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" /ns /np

Delphi 2005
"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi /ns /np

BDS 2006 / Turbo Delphi 2006
"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi /ns /np

Delphi 2007
"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi /ns /np

 [ツール | オプション] で、以下のライブラリパスを追加します。Indy の既存のライブラリパスがあるのなら、一旦削除してから追加して下さい。

バージョン ライブラリパス
Delphi 5 $(DELPHI)\lib\Indy10
Delphi 6
Delphi 7
Delphi 2005 $(BDS)\lib\Indy10
Delphi 2006
Delphi 2007

コンパイルとインストール

 まず、以下のファイルをコンパイル(再構築)します。

 nn の部分は Delphi のバージョンによって異なります。

バージョン nn の値
Delphi 5 50
Delphi 6 60
Delphi 7 70
Delphi 2005 90
Delphi 2006 100
Delphi 2007 110

 コマンドプロンプトから実行すると楽でしょう。

  Delphi 5
"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi5\source\Indy\Indy10\System\IndySystem50.dpk"


"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi5\source\Indy\Indy10\Core\IndyCore50.dpk"


"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi5\source\Indy\Indy10\Protocols\IndyProtocols50.dpk"


  Delphi 6
"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi6\source\Indy\Indy10\System\IndySystem60.dpk"


"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi6\source\Indy\Indy10\Core\IndyCore60.dpk"


"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi6\source\Indy\Indy10\Protocols\IndyProtocols60.dpk"


  Delphi 7
"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi7\source\Indy\Indy10\System\IndySystem70.dpk"


"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi7\source\Indy\Indy10\Core\IndyCore70.dpk"


"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi7\source\Indy\Indy10\Protocols\IndyProtocols70.dpk"


  Delphi 2005
"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\3.0\source\Indy\Indy10\System\IndySystem90.dpk"


"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\3.0\source\Indy\Indy10\Core\IndyCore90.dpk"


"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\3.0\source\Indy\Indy10\Protocols\IndyProtocols90.dpk"


  BDS 2006 / Turbo Delphi 2006
"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\4.0\source\Indy\Indy10\System\IndySystem100.dpk"


"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\4.0\source\Indy\Indy10\Core\IndyCore100.dpk"


"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\4.0\source\Indy\Indy10\Protocols\IndyProtocols100.dpk"


  Delphi 2007
"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi "%ProgramFiles%\CodeGear\RAD Studio\5.0\source\Indy\Indy10\System\IndySystem110.dpk"


"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi "%ProgramFiles%\CodeGear\RAD Studio\5.0\source\Indy\Indy10\Core\IndyCore110.dpk"


"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi "%ProgramFiles%\CodeGear\RAD Studio\5.0\source\Indy\Indy10\Protocols\IndyProtocols110.dpk"


 注意ですが、各パッケージプロジェクトを開いたら、コンパイル(再構築)の前にプロジェクトオプションを変更しなくてはなりません。

・Delphi 5~Delphi 7 の場合 (旧IDE)

・Delphi 2005~Delphi 2007 の場合 (ガリレオIDE)

 最後に、以下のファイルをコンパイル(再構築)し、インストールします。

 コマンドプロンプトから実行すると楽でしょう。

  Delphi 5
"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi5\source\Indy\Indy10\Core\dclIndyCore50.dpk"


"%ProgramFiles%\Borland\Delphi5\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi5\source\Indy\Indy10\Protocols\dclIndyProtocols50.dpk"


  Delphi 6
"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi6\source\Indy\Indy10\Core\dclIndyCore60.dpk"


"%ProgramFiles%\Borland\Delphi6\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi6\source\Indy\Indy10\Protocols\dclIndyProtocols60.dpk"


  Delphi 7
"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi7\source\Indy\Indy10\Core\dclIndyCore70.dpk"


"%ProgramFiles%\Borland\Delphi7\Bin\delphi32.exe" "%ProgramFiles%\Borland\Delphi7\source\Indy\Indy10\Protocols\dclIndyProtocols70.dpk"


  Delphi 2005
"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\3.0\source\Indy\Indy10\Core\dclIndyCore90.dpk"


"%ProgramFiles%\Borland\BDS\3.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\3.0\source\Indy\Indy10\Protocols\dclIndyProtocols90.dpk"


  BDS 2006 / Turbo Delphi 2006
"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\4.0\source\Indy\Indy10\Core\dclIndyCore100.dpk"


"%ProgramFiles%\Borland\BDS\4.0\bin\bds.exe" /pDelphi "%ProgramFiles%\Borland\BDS\4.0\source\Indy\Indy10\Protocols\dclIndyProtocols100.dpk"


  Delphi 2007
"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi "%ProgramFiles%\CodeGear\RAD Studio\5.0\source\Indy\Indy10\Core\dclIndyCore110.dpk"


"%ProgramFiles%\CodeGear\RAD Studio\5.0\bin\bds.exe" /pDelphi "%ProgramFiles%\CodeGear\RAD Studio\5.0\source\Indy\Indy10\Protocols\dclIndyProtocols110.dpk"


 こちらもコンパイル(再構築)の前にプロジェクトオプションを変更しなくてはなりません。


 インストールして完了となります。


Indy 10.2.3 (ANSI 専用最終版) のインストール

既存の環境のバックアップ

 この作業は Delphi 5 には不要です。Delphi 5 に Indy をインストールした事がある場合のみ行って下さい。

 バックアップフォルダを作成します。"C:\INDY_BACKUP" 等のフォルダを作成し、ここに

 という3つのフォルダを作成しておきます。

 次に Delphi を起動します。

Delphi 5~7
"<Delphiインストール先>\bin\delphi32.exe" /ns /np

Delphi 2005~2007
"<Delphiインストール先>\bin\bds.exe" /pDelphi /ns /np

 Delphi が起動したら [コンポーネント | パッケージのインストール] で

バージョン パッケージ
Delphi 5 (なし)
Delphi 6 Internet Direct (Indy) for D6 Property and Component Editors
Delphi 7 Internet Direct (Indy) for D7 Property and Component Editors
Delphi 2005 ・Indy 10 Core Design Time
・Indy 10 Protocols Design Time
Delphi 2006
Delphi 2007

 上記パッケージを削除します。要は "Indy" と名の付くパッケージを削除すればいい訳です。削除が終わったら、[OK]ボタンを押し、Delphi を終了させます。

 Delphi の "<Delphiインストール先>\bin" フォルダに移動し、ここにある "Indy" と名の付くファイルをすべてバックアップフォルダの "bin" へ移動します。

 同じくDelphi の "<Delphiインストール先>\lib" フォルダに移動し、ここにある "Indy10" フォルダごとバックアップフォルダの "lib" へ移動します。"Indy10" フォルダがない場合には、"<Delphiインストール先>\lib" フォルダにある "Indy" と名の付くファイルと "Id" で始まるファイルをすべてバックアップフォルダの "lib" へ移動します。

 同じくDelphi の "<Delphiインストール先>\source" フォルダに移動し、ここにある "Indy" フォルダごとバックアップフォルダの "source" へ移動します。

"<Delphiインストール先>\Projects\Bpl" に Indy 関係のファイルがあれば、こちらはもれなく削除して下さい。

インストールフォルダの作成

 下記2つのフォルダを生成しておきます。これは、Indy 10 のインストール先をすべての Delphi で統一するためです。

 これで既存環境のバックアップが完了しました。

Indy 10.2.3 (ANSI 最終版) のダウンロード

 ダウンロードは indy.fulgan.com から行えていたのですが、ソースコードのミラーが中止されたため、Internet Archive (https://web.archive.org/web/20100326020926/http://indy.fulgan.com/ZIP/) から取得します。"Indy10.zip" が ANSI 専用の 10.2.3 です。

アーカイブの解凍と配置

 アーカイブを適当な場所に解凍したら、"<解凍先>\Indy10\Lib" に移動します。

 ここにあるフォルダの内、

 を、"<Delphiインストール先>\source\Indy\Indy10" へコピーします。

ソースの改変

 この作業は Delphi 5 環境のみ必要です。Delphi 5 を利用しない場合には読み飛ばして下さい。

 "<Delphiインストール先>\source\Indy\Indy10\Protocols" にある "IdHMACSHA1.pas" をテキストエディタで開きます。

initialization
  // RLebeau: why do this?
  TIdHMACSHA1.Create.Destroy;
end.

 ファイル末尾のこの部分を、

{$IFDEF VCL6ORABOVE}
  initialization
  // RLebeau: why do this?
  TIdHMACSHA1.Create.Destroy;
{$ENDIF}
end.

 このように書き換えます。この作業を行わないと dclIndyProtocols50.dpk のインストール時に 「Abstract エラー」 が出て、"Indy 10 Protocols Design Time" をインストールできません (元ネタ)。

ライブラリパスの追加

 Delphi を起動します。

Delphi 5~7
"<Delphiインストール先>\bin\delphi32.exe" /ns /np

Delphi 2005~2007
"<Delphiインストール先>\bin\bds.exe" /pDelphi /ns /np

 [ツール | オプション] で、以下のライブラリパスを追加します。Indy の既存のライブラリパスがあるのなら、一旦削除してから追加して下さい。

バージョン ライブラリパス
Delphi 5 $(DELPHI)\lib\Indy10
Delphi 6
Delphi 7
Delphi 2005 $(BDS)\lib\Indy10
Delphi 2006
Delphi 2007

コンパイルとインストール

 まず、以下のファイルをコンパイル(再構築)します。

 nn の部分は Delphi のバージョンによって異なります。

バージョン nn の値
Delphi 5 50
Delphi 6 60
Delphi 7 70
Delphi 2005 90
Delphi 2006 100
Delphi 2007 110

 注意ですが、各パッケージプロジェクトを開いたら、コンパイル(再構築)の前にプロジェクトオプションを変更しなくてはなりません。

・Delphi 5~Delphi 7 の場合 (旧IDE)

・Delphi 2005~Delphi 2007 の場合 (ガリレオIDE)

 最後に、以下のファイルをコンパイル(再構築)し、インストールします。

 こちらもコンパイル(再構築)の前にプロジェクトオプションを変更しなくてはなりません。


 インストールして完了となります。


 BACK