msi.h) (MsiReinstallProductA 函数

MsiReinstallProduct 函数重新安装产品。

语法

UINT MsiReinstallProductA(
  [in] LPCSTR szProduct,
  [in] DWORD  szReinstallMode
);

parameters

[in] szProduct

指定要重新安装的产品的产品代码。

[in] szReinstallMode

指定重新安装模式。 此参数可使用以下一个或多个值。

含义
REINSTALLMODE_FILEMISSING
仅当缺少文件时才重新安装。
REINSTALLMODE_FILEOLDERVERSION
如果文件缺失或是较旧版本,则重新安装。
REINSTALLMODE_FILEEQUALVERSION
如果文件缺失或是相同或较旧版本,则重新安装。
REINSTALLMODE_FILEEXACT
如果文件缺失或版本不同,请重新安装。
REINSTALLMODE_FILEVERIFY
验证校验和值,如果它们缺失或损坏,请重新安装该文件。 此标志仅修复“ 文件”表的“属性”列中具有 msidbFileAttributesChecksum 的文件。
REINSTALLMODE_FILEREPLACE
强制重新安装所有文件,而不考虑校验和或版本。
REINSTALLMODE_USERDATA
注册表表 重写所有必需的注册表项,这些注册表项转到 HKEY_CURRENT_USER

或 HKEY_USERS

注册表配置单元。
REINSTALLMODE_MACHINEDATA
重新 Registry 表中进入 HKEY_LOCAL_MACHINE 的所有必需的注册表项

或 HKEY_CLASSES_ROOT

注册表配置单元。 重写 类表谓词表PublishComponent 表ProgID 表MIMET 表图标表扩展表AppID 表 中的所有信息,而不考虑计算机或用户分配。 重新安装所有 符合条件的组件

重新安装应用程序时,此选项将运行 RegisterTypeLibrariesInstallODBC 操作。

REINSTALLMODE_SHORTCUT
重新安装所有快捷方式并重新缓存所有图标,这将覆盖所有现有快捷方式和图标。
REINSTALLMODE_PACKAGE
用于从源包运行并重新缓存本地包。 不要将 用于首次安装应用程序或功能。

返回值

返回代码 说明
ERROR_INSTALL_FAILURE
安装失败。
ERROR_INVALID_PARAMETER
向该函数传递了无效参数。
ERROR_INSTALL_SERVICE_FAILURE
无法访问安装服务。
ERROR_INSTALL_SUSPEND
安装已暂停且不完整。
ERROR_INSTALL_USEREXIT
用户取消了安装。
ERROR_SUCCESS
函数已成功完成。
ERROR_UNKNOWN_PRODUCT
产品代码未标识已知产品。
 

有关详细信息,请参阅 显示的错误消息

注解

注意

msi.h 标头将 MsiReinstallProduct 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

   
最低受支持的客户端 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。 若要了解 Windows Installer 版本所需的最低 Windows Service Pack,请参阅 Windows Installer 运行时要求。
目标平台 Windows
标头 msi.h
Library Msi.lib
DLL Msi.dll

另请参阅

安装和配置函数

多个包安装

REINSTALLMODE 属性