屬性表 (Patchwiz.dll)
Properties Table 包含修補程式套件的全域設定。 修補程式建立資料庫 (.pcp 檔案) 中需要 Properties Table,而且是由 UiCreatePatchPackageEx 函式使用。
[屬性數據表] 具有下列數據行。
列 | 類型 | 鑰匙 | 空 |
---|---|---|---|
名字 | 發簡訊 | Y | N |
價值 | 發簡訊 | Y |
列
-
名稱
-
修補程式建立屬性的名稱。
-
值
-
修補程式建立屬性的值。
言論
下表識別可以輸入 .pcp 檔案之 Properties Table 的修補程式建立屬性字串。
財產 | 描述 |
---|---|
AllowLaxValidationFlags | 如果此屬性設定為 1,則會在記錄中寫入專案,如果無法驗證 TargetImages 數據表中的 ProductValidateFlags 欄位,則不會傳回任何錯誤。 只有當修補程式作者變更 ProductValidateFlags 欄位中的值時,才應該設定這個屬性。 此屬性的預設值為 0。 從 Patchwiz.dll 4.0 版開始提供。 |
AllowProductCodeMismatches | 如果 ProductCode 屬性可能與 UpgradedImages 數據表中所列的升級映射 和 TargetImages 數據表中列出的目標映射,則設定為 '1'。 將 設為 '0' 或空白,表示如果產品名稱必須相同,則為 False。 |
AllowProductVersionMajorMismatches | 設定為 '1' 表示如果 ProductVersion 屬性的第一個字段(主要版本欄位)在升級的映像和目標映像之間可能不同,則為 True。 設定為 '0' 或空白,表示如果主要版本必須相符,則為 False。 |
ApiPatchingSymbolFlags | 8 位數十六進位整數,表示建立二進位檔修補時要使用的修補程式符號使用旗標組合。 預設值為 0x00000000。 如需可能PATCH_SYMBOL_* 旗標的完整清單,請參閱 Patchapi.h。 如需符號檔的詳細資訊,請參閱詞彙。 |
DontRemoveTempFolderWhenFinished | 如果包含轉換的暫存資料夾、位元組層級修補程式,以及建立修補程式套件之後,不會移除整個新檔案,則設定為 『1』 表示 True。 這基本上是 .msp 檔案的內容,然後再內嵌到修補程式套件中。 這對於偵錯修補程式可能很有用。 設定為 '0' 或空白,表示如果要移除暫存資料夾,則為 False。 |
IncludeWholeFilesOnly | 設定為 '1' 表示如果在建立修補程式套件時將檔案全部納入,而不是建立二進位檔修補程式,則為 True。 修補程式檔案的大小將會更大,但 API 的執行速度會更快。 設定為 '0' 或空白,表示如果建立二進位檔修補程式,則為 False。 |
ListOfPatchGUIDsToReplace | 沒有分隔符的 PatchGUID 識別符清單。 如果發現這些修補程式安裝在用戶的計算機上,並且向 Windows Installer 註冊,則會從適當的產品中取消註冊,且其修補程式轉換會從與產品相關聯的轉換清單中移除。 請注意,移除修補程式不會影響任何檔案,而只會註冊修補程式。 自選。 |
ListOfTargetProductCodes | 可能收到此修補程式之產品的 產品代碼 清單。 這是以分號分隔的 productCode 屬性值 清單。 如果清單以星號開頭,則會從 TargetImages 資料表中所列目標的 .msi 檔案產生產品代碼清單,。 如果任何產品名稱遵循前置星號,則會附加至取代星號的清單。 如果未設定 屬性,就會從 TargetImages 資料表中所列目標的 .msi 檔案產生產品代碼清單,。 |
MsiFileToUseToCreatePatchTables | 要從中導出 Patch Table 和 PatchPackage Table之範本 .msi 檔案的完整路徑。 Optional.Properties Table 會接受環境變數,以 Patchwiz.dll4.0 版開頭的路徑。 使用環境變數的 Windows 格式,例如 %ENV_VAR%。 請勿使用 格式化 資料行數據類型。 |
OptimizePatchSizeForLargeFiles | 當值存在且不是 「0」 時,就會設定這個屬性。 設定此屬性時,大小大於 4 MB 的檔案修補程式可能會較小。 |
PatchGUID | 此修補程式套件的 GUID 識別碼(.msp 檔案)。 每個修補程式套件都必須有唯一的 PatchGUID 值。 必填。 |
PatchOutputPath | 要產生之修補程式套件檔案的完整路徑,包括檔名。 如果 szPatchPath 是由 UiCreatePatchPackageEx 函式傳遞,則會使用傳遞的值。 如果 szPatchPath 為 null 或空字串,則需要此屬性。Properties Table 會接受環境變數,以路徑開頭為 4.0 版 Patchwiz.dll。 使用環境變數的 Windows 格式,例如 %ENV_VAR%。 請勿使用 格式化 資料行數據類型。 |
PatchSourceList | 在本機快取複本無法使用時,用來尋找修補程式的 .msp 檔案的來源。 當修補程式套用至產品時,這個值會新增至修補程式的來源清單。 自選。 |
MinimumRequiredMsiVersion | 設定此屬性以強制 Patchwiz.dll 產生需要特定 Windows Installer 版本的修補程式。 這個屬性值有助於判斷修補套件 字數摘要 屬性要使用的值。 此屬性的值與安裝套件的 頁數摘要 屬性的格式相同。 如果 .pcp 檔案的 MinimumRequiredMsiVersion 等於 200,Patchwiz.dll 會將修補程式套件的 Word Count Summary 属性設定為 3。 這可防止 Windows Installer 版本早於 2.0 版套用修補程式。 如果 .pcp 檔案的 MinimumRequiredMsiVersion 等於 300,Patchwiz.dll 會將修補程式套件的 Word Count Summary 属性設定為 4。 這可防止 Windows Installer 版本早於 3.0 版套用修補程式。 如果 .pcp 檔案的 MinimumRequiredMsiVersion 等於 310,Patchwiz.dll 會將修補程式套件的 Word Count Summary 属性設定為 5。 這可防止 Windows Installer 在 3.1 版之前套用修補程式。 如果 .pcp 檔案的 MinimumRequiredMsiVersion 等於 400,Patchwiz.dll 會將修補程式套件的 Word Count Summary 屬性設定為 6。 這可防止 Windows Installer 在 4.0 版之前套用修補程式。 |
PATCH_CACHE_ENABLED | 將此屬性設定為 1,以快取 PATCH_CACHE_DIR 屬性所指定資料夾中的修補程式建立資訊。 更新更新映像之後重新建立新的修補程式時,修補程式快取會增加修補程式建立的速度。 此屬性需要在 Windows Installer 2.0 或更新版本中 Patchwiz.dll。 如需詳細資訊,請參閱 修補程式資訊快取 (Patchwiz.dll)。 |
PATCH_CACHE_DIR | 將此屬性設定為儲存快取修補程式資訊的資料夾名稱。 Patchwiz.dll 視需要建立此資料夾。 資料夾應該位於具有足夠磁碟空間的磁碟驅動器上。 只有當PATCH_CACHE_ENABLED屬性設定為 1 時,才會使用這個屬性。 [屬性數據表] 會接受路徑的環境變數,其開頭為 4.0 版的 Patchwiz.dll。 使用環境變數的 Windows 格式,例如 %ENV_VAR%。 請勿使用 格式化 資料行數據類型。 |
SEQUENCE_DATA_GENERATION_DISABLED | 將這個屬性設定為 1 (一) 以防止自動產生修補程式排序資訊。 如果此屬性不存在,則會自動產生並新增排序資訊。 |
SEQUENCE_DATA_SUPERSEDENCE | 將此屬性設定為 0 (零) 或 1 (一),以在 MsiPatchSequence 資料表中所有數據列的 [屬性] 欄位中寫入該值,。 |
TrustMsi | 將 [屬性數據表] 中的此屬性設定為 1,以使用 .msi 檔案中提供的檔案版本資訊、大小和哈希值。 如果已設定此屬性,但 .msi 檔案中的資訊不正確,則建立的修補程式可能無法正常運作。 您應該使用 MsiFiler.exe更新目標並升級 .msi 檔案。 此屬性的預設值為 0。 從 Patchwiz.dll 4.0 版開始提供。 |