Indyの最新版のインストールの仕方[Delphi2005]
Indyの最新版のインストールの仕方[Delphi2005]
執筆:2007.01.05
編集:2007.03.19
編集:2007.07.09
編集:2007.07.18
編集:2007.11.24
編集:2009.10.16
編集:2015.11.21
編集:2017.04.07
記事の内容が古いので注意してください。 最新の内容ではありません。
10.0.52は、かなり古いので
cookieのドメインの最初が .で始まっていると処理できずエラーになります。
(IdCookie、IdCookieManager)
(10.1.6でも直っていませんでした。:2007.3、2007.7)
(10.2.3でも直っていませんでした。:2007.10)
(10.5.7 IndyTiburon.zipで修正されているようです。:2009.10)
(10.6.2.0 svnid:5315 : 2015-11 修正が必要でしたがDelphi2005にインストールできました)
(10.6.2.0 svnid:5412 : Delphi2005にインストールできました)
最新版のインストール方法
最新版の入手先
ダウンロード | http://www.indyproject.org/Sockets/Download/DevSnapshot.en.aspx ZIP/Indy10_~.zip をダウンロード。 |
svn | http://www.indyproject.org/Sockets/Download/svn.EN.aspx https://svn.atozed.com:444/svn/Indy10/trunc |
●展開します
● | パッチなどがあれば手動で適用してください。 | ||||||||
Lib\Core, Lib\Protocols, Lib\System 内の必要な 〜.dpk を開き 大抵は90がついています {$RANGECHECKS ON}を行ごと削除するか OFFに変えます。 他の不必要な物も検討して削除します。 理由は、ソース内の指令は最高優先度だからです。(※1) (なので、定義済みのそれらをコマンドラインやプロジェクトで指定しても反映されません。) Dev Snapshotは、そのままだと Indyは、RANGECHECKエラーなどで使い物になりません。 {$DEBUGINFO ON}なども消していいと思います ※わからない場合は、stable版のソースをみるといいでしょう。 変更したdpkをフォルダ構造を同じにして 他のフォルダにそれだけコピーしておくと次回の更新でとても幸せになれます。 |
|||||||||
|
●indy10\Libにcmd.exe(dosプロンプト)で移動します。
・ indy10\Lib\Computil.dprをコンパイルしてファイルを作成。
生成: dcc32.exe Computil.dpr
で作成できます。
もちろんComputil.dprクリックしてIDEを起動してコンパイルを押してもかまいません。
お好きな方でどうぞ。
● Fulld_2005.bat (Fulld9.bat)
をクリック。
(コンパイル時のエラー対策に、DOSプロンプトをお勧めします)
dcuやパッケージがD9フォルダに出力されています。
●Delphi2005を起動し、ツールライブラリパスの
$(BDS)\LIB\INDY10
を
$(BDS)\LIB\INDY10\D9に変更します。
●パッケージのインストールで
dclIndyCore90.bpl
dclIndyProtocols90.bpl
を削除します
Delphiがハンドルを握ったままなので
●Delphi2005を再起動しましょう。
●パッケージのインストールで
$(BDS)\LIB\INDY10\D9
の
dclIndyCore90.bpl
dclIndyProtocols90.bpl
などを入れ直して完了です
※C:\WINDOWS\SYSTEM32にも入っているのでそれでもいいようです。
$(BDS)\BINフォルダ内の古い *indy*.bpl はどこかに隔離したほうが無難でしょう
Indyのバージョンの確認方法
(新規フォームにボタンを貼って、コードを置き換えてください)
uses IdAbout;
procedure TForm1.Button1Click(Sender: TObject);
begin
IdAbout.ShowDlg
end;
パッチ: | ||
リンク |
レベル | 概要 |
上述 | 中 | ソース内のオプションは、最高優先度なので、 利用する dpk ソース内のオプションを必要に応じて変更します |
詳細へ | 高 | クッキー
Indy10 (2007年3〜10月 時点) |
詳細へ | 低 | IsValidIP (〜2007.7) Fixed 2009年10月 |
おまけ:
-----------------------
ssl通信のはじめにエラー
最新版は、どうも一緒に配布してあるdllだと古くてエラーになるようです。
ソースコードを見ると以下のようにありました。
自分でコンパイル済みのdll最新版を入れるようにだと・・・
インストールするとシステムフォルダにdllがインストールされるようです。
Indy OpenSSL now uses the standard OpenSSL libraries
for pre-compiled win32 dlls, see:
http://www.openssl.org/related/binaries.html
recommended v0.9.8a or later
追記:2007年7月
Indy10\Testを使うには | |
○ソースを\IndyLiveに置く(普通は嫌ですよね!!) そのまま どこでも使うには ○ IndyDUnit.dofのSearchPathの \IndyLiveを..\..\にメモ帳などで一括置換するとそのまま使えます。 そしてIndyDUnit.dprをdelphiで起動します。 ※メインテナンスが悪いようなので コンパイルエラーがでるときがあるようです。 宣言の型を間違っている場合は、Indy\Testの該当部分をIndy\Libのソースからコピーして 貼り付ければ大抵なおります。 型変換が合わないときは、型変換などで解決できます 必要がないなら、Indy\IdRegisterTests.pas の該当ユニットを //でコメントしてはずすという手もあります。 |
Tips
たまにIndyのバージョンによってはアイコン画像がでないことがあります。
もしIDEでアイコン画像がでないときには
$(BDS)\LIB\INDY10\D9
に、resファイルを配置すると表示されることがあります。
エクスプローラーのフォルダ検索機能などで、
$(BDS)\LIB\INDY10\libで検索を押し
ファイル名 *.res での結果をすべて選択してコピーするといいでしょう。
上書きがでた場合は、新しい方を残しましょう。
DOSプロンプトがいい人は
indy\libフォルダで
for %f in (core\*.res System\*.res Protocols\*.res) do echo %f ..\D9\
echoをcopy構文に変えるとコピーできます(誤操作防止にわざとechoに変えてあります)。
なぜか .resourcesが引っかかります。
あまりお勧めしません。
強制終了は、CTRL+Cです。