Installer.ApplyPatch 方法

針對修補程式套件所列的每個產品,符合接收修補程式的資格,Installer物件的ApplyPatch方法會叫用安裝,並將PATCH屬性設定為修補程式套件的路徑。

語法

Installer.ApplyPatch(
  PatchPackage,
  InstallPackage,
  InstallType,
  CommandLine
)

參數

PatchPackage

指定修補程式套件的路徑。

InstallPackage

如果 InstallType 設定為 msiInstallTypeNetworkImage, InstallPackage 會指定要修補的產品路徑。 如果 InstallType 設定為 msiInstallTypeDefault, 且 InstallPackage 設定為 0,安裝程式會將修補程式套用至修補程式套件中列出的每個合格產品。

如果 InstallType 是 msiInstallTypeSingleInstance,安裝程式會將修補程式套用至 InstallPackage所指定的產品。 在此情況下,會忽略修補程式套件中列出的其他合格產品, 而 InstallPackage 參數包含 Null 終止的字串,代表要修補之實例的產品代碼。 這種類型的安裝需要隨附于 Windows Server 2003 或更新版本或 Windows Installer XP SP1 或更新版本的 Windows Installer 版本。

InstallType

此參數會指定要修補的安裝類型。 如果省略InstallPackage則會忽略 InstallType參數。

意義
msiInstallTypeNetworkImage
表示系統管理安裝。 在此情況下, InstallPackage 必須設定為套件路徑。 msiInstallTypeNetworkImage 的值為 1,指定系統管理安裝。
msiInstallTypeDefault
搜尋系統以尋找要修補的產品。 在此情況下, InstallPackage 必須是空字串。
msiInstallSingleInstance
修補 InstallPackage所指定的產品。 InstallPackage 是要修補之實例的產品代碼。 這種類型的安裝需要隨附于 Windows Server 2003 或更新版本或 Windows Installer XP SP1 或更新版本的 Windows Installer 版本。 如需詳細資訊,請參閱 安裝多個產品和修補程式實例

 

CommandLine

指定在命令列上設定的屬性設定。 請參閱一節。

傳回值

這個方法不會傳回值。

備註

因為轉換、來源和修補程式的清單分隔符號是分號,所以不應該將此字元用於檔案名或路徑。

套用小型更新次要升級修補程式時,需要REINSTALL屬性。 如果沒有這個屬性,修補程式就會在系統上註冊,但無法更新檔案。

Windows Installer 2.0:套用小型更新次要升級修補程式時,您必須在命令列上設定REINSTALL屬性。 對於不使用自訂動作類型 51自動設定 REINSTALL 和REINSTALLMODE屬性的修補程式,必須明確地使用CommandLine參數來設定REINSTALL屬性。 將 REINSTALL 屬性設定為列出修補程式所影響的功能,或使用實際的預設設定 「REINSTALL=ALL」。 REINSTALLMODE屬性的預設值為 「omus」。

Windows Installer 3.0 和更新版本: 從 Windows Installer 3.0 版開始, INSTALLER 屬性是由安裝程式設定,不需要在命令列上設定。

規格需求

需求
版本
Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer 3.0 或更新版本。
DLL
Msi.dll
IID
IID_IInstaller定義為 000C1090-0000-0000-C000-000000000046

另請參閱

MsiApplyPatch

關於屬性

Windows Installer 2.0 和更早版本中不支援