RemoveFiles 操作

RemoveFiles 操作删除以前由 InstallFiles 操作安装的文件。 这些文件中的每一个都由指向组件表中条目的链接进行门控。 仅删除组件解析为 msiInstallStateAbsent 状态或 msiInstallStateLocal 状态(如果组件是在本地安装)的文件。

序列限制

调用 RemoveFiles 之前,必须先调用 InstallValidate 操作。 如果使用 InstallFiles 操作,必须在 RemoveFiles 之后。

ActionData 消息

字段 操作数据说明
[1] 已删除文件的标识符。
[9] 包含已删除文件的目录的标识符。

 

备注

如果没有要删除的杂项文件,可以从安装程序数据库中省略 RemoveFile 表。

RemoveFiles 操作还可以删除非 InstallFiles 操作安装的创建者指定的文件。 这些文件是在 RemoveFile 表中指定的。 这些文件中的每一个都由指向组件表中条目的链接进行门控。 如果指定目录中存在组件解析为任何活动操作状态(即不处于 Off 或 Null 状态)的文件,则删除这些文件。 首次安装链接的组件时、重新安装时以及删除链接的组件时,将尝试删除 RemoveFile 表中指定的文件。

RemoveFiles 操作还可以删除文件夹。 如果 RemoveFile 表的 FileName 列中的值为 null,则删除空文件夹。

删除以前安装的文件时,RemoveFiles 操作查询 InstallFiles 操作所查询的表中的相同字段,不同的是 RemoveFiles 操作不使用媒体表

可以在 RemoveFile 表的 FileName 列中以本地化文本指定目标文件名。