媒體表格
媒體資料表描述組成安裝來源媒體的磁片集。
Media 資料表包含下表中顯示的資料行。
資料行 | 類型 | 答案 | Nullable |
---|---|---|---|
DiskId | 整數 | Y | N |
LastSequence | 整數 | N | N |
DiskPrompt | Text | N | Y |
內閣 | 內閣 | N | Y |
VolumeLabel | Text | N | Y |
來源 | 屬性 | N | Y |
資料行
-
DiskId
-
決定資料表的排序次序。 這個數位必須等於或大於 1。
-
LastSequence
-
此媒體最後一個檔案的檔案序號。 LastSequence 資料行中的數位會指定在特定來源磁片上找到 檔案資料表中的 檔案。 每個來源磁片都包含序號 (的所有檔案,如 [檔案] 資料表的 [順序] 資料行所顯示,) 小於或等於 LastSequence 資料行中的值,且大於前一個磁片的 LastSequence 值 (或大於 0,則媒體資料表中的第一個專案) 。 這個數位必須是非負數;上限為 32767 個檔案。 如需使用更多檔案建立 Windows Installer 套件的詳細資訊,請參閱 撰寫大型套件。
-
DiskPrompt
-
磁片名稱,通常是在磁片上列印的可見文字。 此可當地語系化的文字可用來在需要插入此磁片時提示使用者。
-
內閣
-
如果儲存在媒體上的部分或所有檔案壓縮成封包檔案,封包的名稱。 如果未使用封包,此資料行必須為空白。 封包的名稱必須使用 封包 資料類型的語法。 Windows Installer 一律需要有效的來源,才能修復內嵌封包檔案中包含的檔案。 當 Windows Installer 安裝包含內嵌封包檔案的套件時,系統可以儲存封包檔案的複本。 此複本無法用來修復封包檔案。 若要節省磁碟空間,請使用外部封包檔案,而不是內嵌的封包檔案。
-
VolumeLabel
-
屬性為磁片區的標籤。 這是 GetVolumeInformation 函式 所傳回的磁片區標籤。 如果 SourceDir 屬性是指卸載式 (磁片或 CD-ROM 磁片區) 磁片區,則此磁片區標籤會用來確認適當的磁片位於磁片磁碟機中,然後再嘗試安裝檔案。 此資料行中的專案必須符合實體媒體的磁片區標籤。
-
源
-
此欄位僅供修補使用,否則保留空白。 修補程式轉換可以在這裡輸入屬性,這是封包檔案的位置,其中包含修補程式檔案或任何由修補程式新增的新檔案。 需要為這些檔案指定不同的來源,因為修補程式套件的來源可以與產品的來源分開儲存。 如果 [封包] 欄位是空的,安裝程式會忽略此資料行中的值。 如果此欄位是空的,安裝程式會使用 SourceDir 屬性的值做為封包的來源。
備註
如果封包名稱前面加上數位記號 (#) ,則參考此媒體資料表記錄的檔案會封裝在儲存在資料庫中作為個別資料流程的封包檔案中。
如需如何將封包新增至檔案資料表和媒體資料表的詳細資訊,請參閱 使用封包和壓縮來源。
Windows Installer 要求.msi檔案位於用於產品安裝之卸載式媒體的第一個磁片上, (CD、DVD 或磁碟片) 。
判斷 SourceMode
Word Count Summary屬性會決定目前安裝的來源模式。 如果此屬性設定為 2 或 3,則會假設有封包安裝。 在此模式中,封包檔案會假設存在於 SourceDir 屬性所指示的目錄中。 如果 [來源類型] 值為 0 或 1,則會假設所有原始程式檔都存在於根目錄以 SourceDir 屬性工作表示的樹狀結構中。
請注意,這只適用于 [檔案] 資料表中未在屬性資料行中設定 [壓縮] 或 [未壓縮] 位的檔案。 當判斷特定檔案是否壓縮或未壓縮時,這些位會覆寫Word Count Summary屬性的值。
驗證