INF ファイルからのインストール
INF ファイルからインストール情報を取得した後、INF セクションに一覧表示されているファイルをインストールするために使用できるファイル処理関数がいくつかあります。 SetupInstallFile や SetupInstallFileEx などの低レベルの関数は、1 つのファイルをインストールします。
圧縮ファイルを処理する関数もあります。 SetupGetFileCompressionInfo 関数は、圧縮ファイルに関する情報を返します。 この情報は、その後、SetupDecompressOrCopyFile によってコピーされ、必要に応じてファイルを展開します。
SetupInstallFromInfSection、SetupInstallFilesFromInfSection、SetupInstallServicesFromInfSection などの高度な機能、Install または Service セクションでインストール操作を処理します。 これらの中で、SetupInstallFromInfSection は、INF ファイルの インストール セクションに記載されている任意の種類のインストール操作を実行できるため、最も汎用性があります。 これには、AddReg、DelReg、UpdateInis、または Install セクションの UpdateIniField 行に記載されているレジストリと INI 操作が含まれます。
SetupInstallFilesFromInfSection と SetupInstallServicesFromInfSection は、それぞれ Install または Service セクションから既存のファイルキューへのキュー操作を行います。 キューの操作とサービスに対して SetupInstallFromInfSection と SetupInstallServicesFromInfSection を個別に呼び出す必要があることに注意してください。 詳細については、「ファイル キューの」を参照してください。
これに対し、SetupInstallFromInfSection 関数は、独自の内部キューを作成して破棄します。 SetupInstallFromInfSection の一般的な用途は、レジストリと INI トランザクションを実行するためにすべてのファイルが正常にコピーされた後に呼び出す方法です。
Windows 2000 では、Install セクションの RegisterDlls ディレクティブを含む INF ファイルで SetupInstallFromInfSection を呼び出すことによって、DLL ファイルを自己登録できます。 SetupInstallFromInfSection では、64 ビット プロセスから 32 ビット DLL を自己登録することもできます。
64 ビット オペレーティング システムでは、SetupInstallFromInfSection を呼び出して、レジストリの 32 ビット部分に対して操作を実行できます。 レジストリの 32 ビット部分にレジストリ キーを追加するには、INF の AddReg 行にFLG_ADDREG_32BITKEY フラグを含めます。 レジストリの 32 ビット部分でのみレジストリ キーを削除するには、DelReg 行にFLG_DELREG_32BITKEY キーを含めます。 レジストリの 32 ビット部分でのみバイナリ値を設定またはクリアするには、BitReg 行にFLG_BITREG_32BITKEYを含めます。
セットアップ API には、前述の関数に加えて、ファイルまたは INF セクションによって、ファイルのインストール操作をキューに格納する関数が含まれています。 詳細については、「ファイル キューの」を参照してください。