ファイル テーブル
ファイル テーブルには、ローカライズされていない一意の識別子で並べ替えられた、さまざまな属性を持つソース ファイルの完全な一覧が含まれています。 ファイルは、個々のファイルとしてソース メディアに格納することも、キャビネット ファイル内で圧縮することもできます。 詳細については、「キャビネットと圧縮ソースの使用」を参照してください。
ファイル テーブルには、次の列があります。
コラム | 種類 | 鍵 | 許容 |
---|---|---|---|
ファイル | 識別子の | Y | N |
コンポーネント_ | 識別子の | N | N |
FileName | ファイル名の | N | N |
FileSize | DoubleInteger を する | N | N |
バージョン | バージョン | N | Y |
言語 | 言語 | N | Y |
属性 | 整数 の | N | Y |
順序 | 整数 の | N | N |
列
-
ファイル
-
ファイルを一意に識別するローカライズされていないトークン。 このフィールドは大文字と小文字を区別しません。 大文字と小文字のみが異なる別のファイルに識別子を割り当てないでください。
-
Component_
-
コンポーネント テーブルの最初の列への外部キー。 このフィールドは、ファイルを制御するコンポーネントを識別します。
-
FileName
-
インストールに使用されるファイル名。 名前はローカライズできます。
一部の Web サーバーでは大文字と小文字が区別される可能性があるため、FileName は、インターネットのダウンロードを確実にサポートするために、ソース ファイルの大文字と小文字を正確に一致させる必要があります。
-
FileSize
-
ファイルのサイズ (バイト単位)。 これは負以外の数値である必要があります。
-
バージョン
-
このフィールドは、バージョン管理されたファイルのバージョン文字列です。 バージョン管理されていないファイルの場合、このフィールドは空白です。 このフィールドに入力するファイルのバージョンは、インストール パッケージに含まれるファイルのバージョンと同じである必要があります。
[バージョン] フィールドは、[ファイル] テーブル内の別のレコードの主キーを格納するように設定することもできます。 その後、参照されるファイルによって、このファイルのバージョン管理ロジックが決定されます。 詳細については、「コンパニオン ファイルの 」を参照してください。 このファイルがそのコンポーネントのキー パスである場合は、コンパニオン ファイルとして指定しないでください。
-
言語
-
コンマで区切られた 10 進言語 ID のリスト。
フォント には言語 ID リソースが埋め込まれていないので、フォント ファイルは言語 ID で作成しないでください。 したがって、フォント ファイルの場合、この列は null のままにする必要があります。
-
属性
-
ファイル属性を表すビット フラグを含む整数。
次の表に、ビット フィールドの定義を示します。
定数 16 進 数 小数 形容 msidbFileAttributesReadOnly 0x000001 1 Read-Only msidbFileAttributesHidden の 0x000002 2 隠れた msidbFileAttributesSystem 0x000004 4 制 msidbFileAttributesVital を する 0x000200 512 ファイルは、それが属するコンポーネントの正確な操作に不可欠です。 msidbFileAttributesVital 属性を持つファイルのインストールが失敗した場合、インストールは停止し、ロールバックされます。 この場合、[無視] ボタンのないダイアログ ボックスがインストーラーに表示されます。 この属性が設定されておらず、ファイルのインストールが失敗した場合、インストーラーは [無視] ボタンを含むダイアログ ボックスを表示します。 この場合、ユーザーは、ファイルをインストールして続行する失敗を無視することを選択できます。 msidbFileAttributesChecksum 0x000400 1024 ファイルには、有効な チェックサムが含まれています。 破損したファイルを修復するにはチェックサムが必要です。 msidbFileAttributesPatchAdded を する 0x001000 4096 このビットは、パッチによってのみ追加する必要があり、ファイルがパッチによって追加される場合に限られます。 msidbFileAttributesNoncompressed 0x002000 8192 ファイルのソースの種類は圧縮されていません。 設定されている場合は、ワードカウントの概要 プロパティを無視します。 msidbFileAttributesNoncompressed または msidbFileAttributesCompressed どちらも設定されていない場合、ファイルの圧縮状態は Word Count Summary プロパティで指定されます。 msidbFileAttributesNoncompressed と msidbFileAttributesCompressedの両方 設定しないでください。 msidbFileAttributesCompressed 0x004000 16384 ファイルのソースの種類が圧縮されます。 設定されている場合は、ワードカウントの概要 プロパティを無視します。 msidbFileAttributesNoncompressed または msidbFileAttributesCompressed どちらも設定されていない場合、ファイルの圧縮状態は Word Count Summary プロパティで指定されます。 msidbFileAttributesNoncompressed と msidbFileAttributesCompressedの両方 設定しないでください。 msidbFileAttributesVital 属性列内のビットが設定されていて、ファイルが属するコンポーネントがインストール用に選択されている場合、インストーラーはインストールを正常に完了するためにこのファイルをインストールできる必要があります。 インストーラーが何らかの理由でファイルをインストールできない場合 (ソース ファイルをソース イメージ内に配置できない場合など)、エラー ダイアログ ボックスが表示され、[再試行] または [キャンセル] オプションが表示されます。 msidbFileAttributesVital が設定されていないファイルの場合、インストール エラーが発生した場合のオプションは "Abort"、"Retry"、"Ignore" になります (つまり、ユーザーには、そのファイルをインストールせずに正常にインストールを完了するオプションがあります)。
msidbFileAttributesChecksum ビットは、ポータブル実行可能ファイル (PE) ファイル ヘッダーに格納されている有効な チェックサム を持つ、インストール内のすべての実行可能ファイルに対して設定する必要があります。 再インストール時に有効なチェックサムが検証されるのは、このビット セットを持つファイルだけです。 詳細については、REINSTALLMODEを参照してください。
-
シーケンス
-
メディア イメージ上のこのファイルのシーケンス位置。 ファイルが圧縮されている場合、この順序はキャビネット内のファイルの順序に対応している必要があります。 このフィールドの整数は、1 以上である必要があります。
[シーケンス] 列のシーケンス番号は、ファイルのインストール順序と、ファイルが配置されているソース メディアの両方を指定するために使用されます (メディア テーブルと組み合わせて)。 たとえば、ファイルのシーケンス番号が 92 だとします。 このファイルが存在するソース ディスクを確認するには、Media テーブルで、92 より大きい最後のシーケンス値が最も小さいエントリを探します。
圧縮ファイルにはキャビネット内の内部シーケンス番号が割り当てられますが、これらの絶対番号はファイル テーブル内のシーケンス番号と一致する必要はありません。 ただし、ファイル テーブル内のファイルのシーケンスは、キャビネット内のファイルのシーケンスと同じであることが重要です。
圧縮されていないファイルの場合、シーケンス番号は一意である必要はありません。 たとえば、すべてのファイルが圧縮されていない場合、すべてのファイルが 1 つのディスクに存在する場合は、すべてのファイルに同じシーケンス番号を指定できます。
上限は 32767 ファイルです。 より多くのファイルを含む Windows インストーラー パッケージを作成するには、「大規模パッケージの作成」を参照してください。
備考
InstallFiles および RemoveFiles アクションは、このテーブルの情報を処理、シーケンス テーブル内のアクションです。 シーケンス テーブル 使用の詳細については、「シーケンス テーブル の使用を参照してください。
テーブルは最初はファイル リストから生成されますが、キャビネット圧縮を使用すると、圧縮エンジンの出力からテーブルが再生成されます。 詳細については、「キャビネット ファイルの」を参照してください。
インストール中にユーザーのコンピューター上の既存のファイルを移動するには、moveFiles アクション を使用し、MoveFile テーブル をします。 複数の場所にファイルをインストールするには、DuplicateFiles アクション と DuplicateFile テーブルを使用します。
次の表は、[バージョン] 列と [言語] 列で使用できる値の組み合わせをまとめたものです。 詳細については、「ファイルのバージョン管理規則」を参照してください。
バージョン | 言語 | 形容 |
---|---|---|
1.2.3.4 | 1033 | バージョンと言語。 |
1.2.3.4 | (Null) | バージョンですが、言語はありません。 |
1.2.3.4 | 0 | バージョンと言語はニュートラルです。 |
Testdb | (Null) | 言語が関連付けられていないコンパニオン ファイル。 |
Testdb | 1033 | コンパニオン ファイルと言語。 |
(Null) | 1033 | バージョンはありませんが、言語が関連付けられています (つまり、typelib、helpfile)。 |
詳細については、「MsiLockPermissionsEx Table と LockPermissions Table 」を参照してください。
検証
ICE02
ICE03
ICE04
ICE06
ICE18
ICE30
ICE32
ICE35
ICE39
ICE42
ICE45
ICE50
ICE51
ICE54
ICE55
ICE57
ICE59
ICE60
ICE67
ICE69
ICE76
ICE91