[Delphi XE に Indy をインストールする]
はい、インストール プロセスは面倒ですが、正しく行うことには価値があります。
これは、SSL を除くすべての Indy コンポーネント用です。(私はまだSSLのものを試していません。)
A.) Delphi に付属するすべての Indy ファイルを探して破棄します。Indy プロジェクトは毎日新しいバグ修正で更新されるため、これらは役に立ちません。Delphi が新しい Indy ライブラリの代わりに古いファイルのいずれかを取得すると、さまざまな時点で IDE からクレイジーなエラーが発生し、追跡が非常に困難になります。
私。[コンポーネント] --> [パッケージのインストール] に移動し、「Indy」で始まるすべてのパッケージを完全に削除します。
ii. Delphi を閉じます。
iii. Delphi の Bin フォルダから「dclIndy*.bpl」および「Indy*.bpl」に一致するすべてのファイルを消去します。
(C:\Program Files\Embarcadero\RAD Studio\8.0\bin)
iv。Delphi の Lib サブ フォルダにある「Indy*.dcu」と「Id*.dcu」^^^ に一致するすべてのファイルを消去します。
(C:\Program Files\Embarcadero\RAD Studio\8.0\lib\win32\debug)
(C:\Program Files\Embarcadero\RAD Studio\8.0\lib\win32\release)
^^^ 警告: 「idipids.dcu」や「idoc.dcu」のように「id」の文字で始まる Indy DCU
v. Indy10 ソース フォルダ全体を削除します:
(C:\Program Files\Embarcadero\RAD Studio\8.0\source\Indy10)
B.) http://indy.fulgan.com/ZIP/から最新の Indy10_XXXX.zip をダウンロードし
ます (以下の手順のいずれかでこの zip ファイルを使用してコンパイル エラーまたはランタイム エラーが発生した場合は、落胆しないでください!次の日に zip ファイルを再ダウンロードして、もう一度お試しください。この zip ファイルは毎日更新されており、特定の日にバグやエラーが発生する可能性があります。)
C.) System、Core、および Protocols フォルダのみを独自の Indy ライブラリ フォルダに抽出します。元。
(c:\MyDelphiComponents\Indy\Core)
(c:\MyDelphiComponents\Indy\System)
(c:\MyDelphiComponents\Indy\Protocols)
D.) Delphi を起動します。失敗したすべてのパッケージ ダイアログを無視する: これらは、Indy に依存する Embarcadero パッケージです。(すべてのエラーで [OK] をクリックし、失敗したパッケージを再度ロードしないことを示します。)
E.) [オプション] --> [環境オプション] --> [Delphi オプション] --> [パスの参照] に移動します - $(BDS)\Lib\Indy10 で始まるパスを削除します
F.) [オプション] --> [環境オプション] --> [Delphi オプション] --> [ライブラリ パス] に移動します。手順 C の新しいシステム、コア、およびプロトコル フォルダを Delphi のライブラリ パスに追加します。
G.)次の 5 つのアクションを順番に実行します: (プロジェクトのアップグレードに関するすべてのダイアログで [OK] と言うだけです。)
重要:
各 dpk をロードした後、各ビルドの前に、次の場所に移動します。
プロジェクト --> オプション --> 説明 --> ビルド コントロール
ラジオボタンを「Explicit Rebuild」に設定します。
(実際、これは任意ですが、私はいつもパッケージを Explicit Rebuild にしています。なぜなら、その方が扱いやすいからです。しかし、他の人がこれについてどう思うか聞きたいです...)
- ビルド - System\IndySystem150.dpk
- ビルド - Core\IndyCore150.dpk
- 最初にビルドしてからインストール - Core\dclIndyCore150.dpk
- ビルド - Protocols\IndyProtocols150.dpk
- 最初にビルドしてからインストール - Protocols\dclIndyProtocols150.dpk
** すべてのパッケージで「Explicit Rebuild」が設定されていることを再確認してください! **
H.)最後に、[コンポーネント] --> [パッケージのインストール] に移動し、手順 D でオフにした Indy に依存するすべてのパッケージを見つけます。それらを再度アクティブにして、Delphi を再起動します。(新しい Indy が Delphi でリリースされたものからあまり変更されていない場合、それらのパッケージは新しい Indy を使用します!)
++ 注意: これらの Embarcadero パッケージを再アクティブ化してもすぐにエラーが表示されない場合がありますが、後でランダムに表示される場合があります。たとえば、Indy10_4548.zip をインストールしたところ、再アクティブ化されたすべてのパッケージは問題ないように見えました。それから 1 日後、突然、IDE から、TIdCustomHTTP で GetRequestHeaders が見つからず、結果として dclWindowsAzureManagement150.bpl に問題があるというメッセージが表示されました。そのため、IDE でその Windows Azure パッケージを無効にする必要がありました。