Migaro. 技術Tips

                       

ミガロ. 製品の技術情報
IBMiの活用に役立つ情報を掲載!


Delphi/400 クライアント環境のクリーンアップ手順

Delphi/400では、クライアント端末側では
複数バージョンのDelphi/400を共存させることは製品仕様としてできません。
(IBM i 側は複数バージョンが動作していても問題ありません)

バージョンアップなどでPC側のDelphi/400のバージョンを変更する際には、
変更前バージョンのDelphi/400をアンインストールする必要があります。

※開発版の場合、Delphi(RAD Studio)本体のアンインストールは必要ありません

※開発版でDelphi/400を「より新しいバージョン(XE7または10以上)に初めて上げる」場合は、
 新しいバージョンのDelphi/400に付属している『BDE』の再インストールが必要になります。

 

上記のアンインストールを行わずに
別のバージョンのDelphi/400を上書きでインストールした場合、

  • DLLが同じパスに上書きされるため、正常に動作しなくなる
  • INIファイルの設定値が不正になるため、正常に動作しなくなる
  • 『序数XXXがダイナミックライブラリ C:\~~\~~.DLLから見つかりませんでした』
    といったエラーが発生する

といった事象が発生することがあります。

このような場合は、以下の手順に従って
Delphi/400のアンインストール~クリーンアップを実施してから、
再インストールを実施して下さい。

※この手順は、旧バージョンから新バージョンに上げる場合のみならず、
 移行期間中などで新バージョンから旧バージョンへ「バージョンダウン」する際にも有効です。

※通常時は、以下の1・4・6のみの実施で問題ありません。
 エラー発生時に、1~6すべての手順を実施して下さい。

 


 

  1. 入替元バージョンのDelphi/400 をアンインストールする。
    1. 開発版PCの場合、Delphi(RAD Studio)本体は残しておいて問題ありません。
  2. 入替元バージョンの「C:\CO4XX」フォルダを
    削除するか、別名にリネームする。
    1. 元のバージョンに戻すことがある場合は、
      エリアス情報を格納した「ALIASES.CFG」ファイルを再利用できます。
  3. C:\Windows\SysWOW64 フォルダから、
    ファイル名に「400」を含む下記のBPI・BPL・DCP・DLLファイルを削除する。
    1. 対象PCが32bitの場合は、SysWOW64ではなく「System32」が対象です。
    2. 対象PCが64bit かつ 入替元バージョンがXE3以上 の場合は、
      System32フォルダにある64bit用のファイルも対象となります。
  4. メモ帳などのテキストエディタを管理者として起動し、
    「C:\Windows\win.ini」ファイルを開き、
    [CO400] セクションを削除して上書き保存する。
    1. 入替元バージョンがXE以前の場合は、この手順が必須となります。
    2. 入替元バージョンがXE3以上の場合は、win.iniを使用しないためこの手順は不要です。
  5. レジストリエディタを起動し、HKEY_LOCAL_MACHINEの中にある
    「SOFTWARE\Wow6432Node\SystemObjects」
    「SOFTWARE\Wow6432Node\TCIS」
    のキーを削除する。
    1. 対象PCが32bitの場合は「Wow6432Node\」を読み飛ばして下さい。
  6. 入替先バージョンのDelphi/400をインストールする。

 

Delphi/400のインストール後は、Configurationを起動して
IBM i への接続確認を実施して下さい。

(ConfigurationでOKボタンを押すことによって反映される設定値も存在します。)
(上記2.で記載の「ALIASES.CFG」ファイルを再利用する場合は、
 Configurationの起動前に「C:\CO4XX」フォルダにコピーしておきます。)

 


 

 

<補足:クリーンアップ時に削除するファイルの一覧

※バージョンによって存在しない場合があるため、存在する場合のみ削除

  • 32ビットアプリケーション用
    (64bit端末:「C:\Windows\SysWOW64」、32bit端末:「C:\Windows\System32」)
    • CO400LOC.DLL
    • CO400NET.DLL
    • co400res.dll
    • CO40032.DLL
    • DBCO400.DLL
    • DBCO430.DLL
    • E32TCPIP.DLL
    • FDCO400.DLL
    • ODCO400.DLL
    • ODCOCFG.DLL
    • SCD400NET.dll
    • TCRTR32.DLL
    • 「combo400」で始まるBPI・BPL・DCPファイル
    • 「dclscd400」で始まるBPI・BPL・DCPファイル
    • 「FDCO400」で始まるBPI・BPL・DCPファイル
    • 「scd400」で始まるBPI・BPL・DCPファイル
  • 64ビットアプリケーション用
    (64bit端末:「C:\Windows\System32」、32bit端末:対象外)
    • CO400NET.DLL
    • CO400LOC.DLL
    • DBCO430.DLL
    • E32TCPIP.DLL
    • FDCO400.DLL
    • TCRTR32.DLL
    • 「scd400」で始まるBPI・BPL・DCPファイル