インストールプロセス中にドライバをインストールする必要があります。InnoSetup
です。そのためには、私は2つの.msi 32ビット/ 64ビットのインストールファイルがあります。今Win7では、このドライバは既に組み込まれているので、もう一度インストールする必要はありません。これまでのところ、私はこれをしました:InnoSetup設定ファイルの[実行]セグメントのWindowsバージョンを確認してください
[Tasks]
Name: "install_usb"; Description: "Install USB driver"; GroupDescription: "Drivers:";
[Files]
Source: "xy\driver\*"; DestDir: "{tmp}"
[Run]
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\driver_32bit.msi"""; StatusMsg: "Installing 32bit USB driver"; Check: not IsWin64(); Tasks: install_usb; Flags: skipifsilent
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\driver_64bit.msi"""; StatusMsg: "Installing 64bit USB driver"; Check: IsWin64(); Tasks: install_usb; Flags: skipifsilent
したがって、ユーザーはドライバをインストールするかどうかを選択できます。彼がそうすることに決めたなら、正しいドライバーが走ります。これは正常に動作します。今度はWin7が動作している場合にドライバをインストールしないことを選択します。私は約OnlyBelowVersion: 6.1
を読んで、私は[Run]
セクションでは、このような何かをすることができないように見える:
[Run]
... Check: IsWin64() and OnlyBelowVersion:6.1; ...
どのように私は[Run]
セクションでOnlyBelowVersion
(または類似したもの)を使用できますか?
また、私はの.msiが適切なモード(64ビットシステム用の64ビットモード)で実行されていることを確認します。私は思うので、今はそうではありません。それを強制することは可能ですか? ArchitecturesInstallIn64BitMode=x64
について知りましたが、どこに入れなければなりませんか?
涼しい、それは完全に動作します。 2番目の質問:はい、これはx64版で真ですが、実行可能ファイルとインストーラが64ビットモードで動作することも保証されていますか? – brimborium
ああ、InnoSetupインストーラ自体ではなく、64ビットシステムで 'driver_64bit.msi'インストーラだけを実行したいと思っていました。それから私は答えを更新します... – TLama
まあ、ドライバは重要な部分です。しかし、この状態でインストーラ自体を含めることも難しくない場合、それは良いことです。 – brimborium