Delphi Programming / Object Pascal
サイトのトップページへ リンクのページへ ロゴマーク
[掲載 2015年11月24日] [更新 2016年08月15日] Delphi 一般・その他
Windows 10 に Delphi 7 以前の Delphi をインストール
動作確認等 Windows 10 ビルド 10586 Pro + Delphi 4, 5, 6, 7 (全て Pro 版) 等
[整理番号 - 0390]



  • 2016年08月15日 (これより前の履歴は省略)
  • 2016年08月02日の Windows 10 Anniversary Update をインストールしたので,Delphi 4 / 5 をインストールした結果で文章を更新




01_管理者権限でインストール


Delphi 7 以前の Delphi を Windows 10 にインストールしてみました.
この Windows 10 には,どのバージョンの Delphi もインストールしていない状態です.

Delphi のインストール方法の説明に「administrator privilege (管理者権限)」で実行するように書いてあります.そう書いてある以上,管理者権限でインストールを実行するのが普通の一般的なインストール方法と言えます.
したがって,インストールは管理者権限で行いました.IDE も管理者権限で起動しました.
Windows 10 は,Windows Vista 以降の OS です.以下の記事の内容も確認してください.



なお,全てのバージョンで InterBase Client はインストールしませんでした.



図1
管理者権限でインストール開始
  • DVD の自動再生は使用しない
  • 自動再生したら閉じてファイル表示
  • [管理者として実行] で Install.exe を実行
  • この図は Delphi 7 の例
図2
ユーザアカウント制御ダイアログ
  • 当然 [はい] をクリック

インストールが終了した Delphi の IDE も管理者権限で起動します.
改めて書く必要はないかも知れませんが,IDE を管理者権限で起動する必要があるのですから,既存のプロジェクトを開くにも,管理者権限で起動した IDE で開く必要があります.


図3
管理者権限で Delphi (IDE) を起動
  • この図は Delphi 7 の例

Windows Vista, 7, 8.1 の時と同じように,インストーラの起動直後と IDE 起動時に下図のような警告が現れます.また,JIT デバッガ (Just-In-Time Debugging) の設定ダイアログが表示されます.
古いバージョンのインストーラでは,表示されるダイアログが,他のダイアログに隠れてしまう場合があります.タスクバーの表示にも注意する必要があります.



図4
互換性の警告はすぐ消える
  • Windows Vista, 7, 8.1 には [プログラムを実行する] というボタンがあった.それをクリックしないと先に進めなかった
図5
JIT (Just-In-Time) Debugging の設定
  • 別バージョンの Delphi がインストールされていると表示されることがある
  • [はい] をクリックする

上図以外にも,[プログラム互換性アシスタント] のダイアログが表示されることがあります.
それらのダイアログでは,[このプログラムは正しくインストールされました] や [このプログラムは正しく動作しました] 等をクリックして,ダイアログを閉じます.



[備考 1]
記事掲載当初,Windows 10 のビルド番号が 10240 でした.
このバージョンでは,Delphi 4, 5 のインストールの際,システムフォルダ関係のコピーのリダイレクトが行われない現象がありました.この現象は ビルド 10586 では修正されています.
そこで, 2015年11月28日の更新で ビルド 10586 を対象にした記事に修正しました.


[備考 2]
2015年12月13日より前の記事に大きな間違いがありました.
Delphi 4, 5 は,BDE を含めないと単独でのインストールはできないようです.
したがって, 2015年12月13日時点の Windows 10.0.10586 では,Delphi 4, 5 の単独インストールできません.もし,Delphi 6 以降の Delphi 等で BDE をインストール済みであれば,BDE を除いてのインストールが可能です.





02_Program Files 以外へのインストールでも管理者権限が必要


改めて書くまでもありませんが,インストール先を Program Files (または Program Files (x86)) 以外の場所にする場合であっても,管理者権限でインストールする必要があります.
多くのアプリケーション同様,Delphi のインストーラも,インストール先がどこであろうと,レジストリやシステム関係のフォルダを操作します.レジストリやシステム関係のフォルダの操作には,管理者権限が必要です.

Program Files (または Program Files (x86)) 以外の場所にインストールする場合,管理者に昇格しないでインストールしても基本的にエラーは発生しません.これは Windows Vista で導入された「ファイルとレジストリの仮想化」による現象です.





03_Windows 10 に Delphi 6 / Delphi 7 をインストール


Windows Windows 10.0.10586 に Delphi 6, 7 をインストールしました.
Delphi 6, 7 は,完全に 32 ビットのアプリケーションです.したがって,インストールも実行も,基本的に可能ということになります.64 ビット版の Windows には,32 ビットのプログラムを実行可能にする仕組みが実装されています.この仕組みを WOW64 環境と言います.

インストールも実行時も,互換性の警告と [ユーザアカウント制御] ダイアログが表示される以外は,Windows XP の時のインストール作業と全く同じです.



図6
[標準] でインストール

起動した Delphi 7 の IDE の画面です.Delphi 6 も同じ手順でインストールしました.
32 ビットの Windows 10.0.10586 にもインストールして IDE の起動を確認しました.


図7
Delphi 7




04_64 ビット版 Windows 10 に Delphi 4 / Delphi 5 をインストール


Delphi 6, 7 をインストールした後に,Delphi 4, 5 Pro もインストールしてみました.
2015年12月13日の時点では,Delphi 4, 5 は単独でのインストールはできません.Delphi 6 以降で BDE がインストール済みであれば,BDE 関係を除外してのインストールが可能です.
BDE 関係を含めると,BDE の設定で応答なしになってしまいます.



図8
BDE 関係を除外してインストール
  • システムに BDE がインストールされていないと,BDE なしでのインストールはできない
  • BDE
    SQL Link
    のチェックを外す

インストールを終了して,アップデートも実行しました.コンピュータを再起動して Delphi 4 を起動したのが下図です.Delphi 4 をインストールする前に Delphi 6, 7 をインストールしています.その時に BDE もインストールしています.したがって,この図のように BDE が使用できます.

インストールさえできれば,正常に機能する可能性があります.インストールの際に問題となる現象は発生しません.設定はレジストリに記録され,その設定に従って動作するからです.
Delphi 4, 5 は 32 ビットのアプリです.64 ビット版の Windows には 32 ビットのアプリを動作させるための仕組みが実装されています.



図9
Delphi 4




05_32 ビット Windows 10 に Delpi 4 / Delphi 5 をインストール


Delphi 6, 7 をインストールした後に,Delphi 4, 5 をインストールしました.
2015年12月13日の時点では,Delphi 4, 5 は単独でのインストールはできません.Delphi 6 以降で BDE がインストール済みであれば,BDE 関係を除外してのインストールが可能です.
BDE 関係を含めると,BDE の設定で応答なしになってしまいます.

install.exe を起動すると,下図のような NTVDM のインストールを促すダイアログが現れますが,この NTVDM をインストールしないと Delphi 4, 5 はインストールできません.インストールが終了すれば NTVDM は必要ありません.



図10
NTVDM をインストール

NTVDM (NT Virtual DOS Machine) は,32 ビット版の Windows で 16 ビットのプログラムを実行する仕組みです.64 ビット版の Windows で 32 ビットのアプリを実行する仕組みである WOW64 に対して WOW32 と呼ばれることもあります.
NTVDM は,64 ビット版の Windows には実装されていません.64 ビット版の Windows では 特定のインストーラ以外の 16 ビットのアプリケーションは実行できません.

NTVDM は下図の [Windows の機能の有効化または無効化] のダイアログで設定できます.このダイアログは以下のコマンド (コマンドプロンプトや [ファイル名を指定して実行] 等) で表示できます.


%SystemRoot%\System32\OptionalFeatures.exe


図11
[Windows の機能の有効化または無効化] ダイアログの NTVDM の設定
  • NTVDM の設定は,64 ビット版の Windows にはない




06_32 ビット Windows 10 に Delphi 3 以前 をインストール


Delphi 3 以前の Delphi もインストールしてみました.
Delphi 1 は 16 ビットのアプリケーションです.
32 ビット版の Windows では,前述の NTVDM を有効にすると, 16 ビットのプログラムが実行できます.したがって,初期のバージョンである Delphi 1 もインストールして実行できます.

Delphi 2, 3/3.1 は 32 ビットのアプリケーションですが,インストールに 16 ビットのプログラムを使用しています.したがって,NTVDM を有効にしないとインストールできません.
Delphi 1 では,実行時にも NTVDM が必要となります.Delphi 2, 3/3.1 は 32 ビットのアプリですが,16 ビットである Windows 3.1 も動作対象になっています.したがって,内部で 16 ビットのプログラムを使用している可能性があります.実行時にも NTVDM が必要な場合があるかも知れません.

NTVDM の機能が実装されていない 64 ビット版の Windows には,Delphi 3.1 以前の Delphi はインストールできません.



図12
Delphi 1 をインストール
  • カスタムインストールの設定画面

下図は,Delphi 1 をインストールした後,コンピュータの再起動後に,IDE を起動して,BDE 経由で Paradox のデータを表示しているところです.これは設計時の画面です.



図13
Delphi 1




07_32 ビット Windows 10 に Delphi 4 / 5 を互換モードインストール


Delphi 4 / 5 で BDE 関係がインストールできない現象は,おそらく,Windows 10 の今後のアブデートで修正されると思われます.それまで待てないという方のためのインストール方法です.
ただし,32 ビット版の Windows 10 だけで有効な方法です.

まず,install.exe のプロパティを設定します.互換モードを [Windows 98 / Windows Me] にして,[管理者としてこのプログラムを実行する] をチェックします.
設定したら,install.exe を起動します.
NTVDM のインストールを促すダイアログが現れたら,NTVDM をインストールします.



[備考]
インストールは互換モードで実行する必要がありますが,インストールしてしまえば,IDE を互換モードで起動する必要はありません.Delphi 4, Delphi 5 本体そのものは 32 ビットのアプリケーションです.したがって,32 ビットの Windows で動作します.
2015年12月13日現在,互換モードでないと正常に動作しないのはインストーラです.



図14
install.exe のプロパティの設定
  • [互換性] タブを表示
  • [互換モードでこのプログラムを実行する] をチェック
  • [互換モード] を
    [Windows 98 / Windows Me] にする
  • [管理者としてこのプログラムを実行する] をチェックする
図15
[標準] でインストール開始
図16
InterBase Client はインストールしない

マージ失敗のダイアログが現れたら,[OK] をクリックしてインストールを続けます.
このダイアログのタイトルは,Delphi 5 では [結合の失敗] となっています.




図17
マージ失敗のダイアログ
  • Delphi 5 では [結合の失敗]
  • [OK] をクリックして続行

図18
セットアップ終了
  • レジストリの設定をしてから再起動

インストールが終了したら,コンピュータを再起動する前にレジストリの設定をします.
レジストリエディタを起動して,下図のように,Database Engine キーの CONFIGFILE01 の値を変更します.データ (値) は idapi.cnf のフルパスとします.idapi.cnf のフルパスは,デフォルトでは以下の値となっています.
設定してから再起動しないと,レジストリに BDE 用の各種ドライバが登録されません.また,この設定をしないと,BDE を使用したアプリが例外を発生します.

設定したら,コンピュータを再起動します.


C:\Users\XXX\AppData\Local\Temp\_ISTMP0.DIR\IDAPI.CNF
               変更
C:\Program Files\Common Files\Borland Shared\BDE\idapi.cnf


図19

再起動したら,以下の記事を参考にして,NET DIR の設定をします.

PARADOX (STANDARD) のデータベースのエイリアスを新規に作成しておくことにします.下図では,エイリアス名を DBDEMOS としています.そのデータベース DBDEMOS の PATH を,PARADOX のデモデータが格納されているフォルダ名にします.
これで,BDE を経由した PARADOX のデータベース接続のテストが可能になります.

手元に BDE 2.5 (bde520jp.exe) があればインストールしておきます.bde520jp.exe はアップデート版です.単独でのインストールはできません.




図20




08_Windows 10 へのインストール作業の結果


Delphi 4, 5 は 条件付きですが,筆者の Windows 10 の環境に古いバージョンの Delphi をインストールしました.



図21
32 ビット版の Windows 10 にインストールした Delphi
図22
デスクトップから管理者権限で起動可能にしておく
  • Delphi の EXE を管理者権限で実行するように設定
  • 各アプリの [ファイルの場所を開く] で,開いたファイルのショートカットをデスクトップにコピー
  • 管理者権限で起動する意味の「盾」マークが付く

  • Revo Uninstaller は,Delphi を完全にアンインストールするために使用したアプリ

下表は,筆者がテストしたインストールの結果です.
Windows 7 の時と違い,インストールと IDE の起動程度の簡単な確認しかしていません.



   32 ビット版 Windows 10 64 ビット版 Windows 10
Delphi 1 通常インストール可 不可
Delphi 2 通常インストール可 不可
Delphi 3 通常インストール可 不可
Delphi 4 互換モードならば単独インストール可 単独インストール不可
Delphi 5 互換モードならば単独インストール可 単独インストール不可
Delphi 6 通常インストール可 通常インストール可
Delphi 7 通常インストール可 通常インストール可


[備考 1]
2016年08月02日に Windows 10 Anniversary Update という大型のアップデートがありました.
このアップデートで,Windows 10 (バージョン 1607 ビルド 14393.10) となりましたが,このアップデートでも Delphi 4, 5 は単独インストールできないことを確認しました.
あらかじめ BDE を単体インストールしておけば,Delhi 4 . 5 も Windows 10 にインストール可能と思われますが,筆者はその確認作業はしていません.
2021年6月,PC に Windows 10 (64 bit) を新規インストールしました.その際,以下のプログラムを使用して,BDE だけを先にインストールしました.その後,Delphi 5 を, BDE,InterBase Client を含めないでインストールして,BDE 関係のコンポーネント類が使用可能であることを確認しました.


[備考 2]
ネット上に,UAC を無効にしてインストールする記事があります.また,Program Files (Program Files (x86)) 以外の場所にインストールする記事もあります.Program Files (Program Files (x86)) やシステムフォルダのアクセス権を変更してインストールする記事もあります.
本ページのインストールと実行のテストでは,そのような操作は一切していません.


[備考 3]
64 ビットの Windows にインストールしても,64 ビットのアプリケーションが作成できるわけではありません.64 ビットのアプリケーションの開発には Delphi XE2 以降が必要です.