同步和异步自定义作

Windows Installer 将自定义作作为独立于主安装的线程进行处理。 在同步执行自定义作期间,安装程序会等待自定义作的线程完成,然后再继续主安装。 在异步执行期间,安装程序会在当前安装继续时同时运行自定义作。 因此,自定义作的作者必须知道任何可能在函数调用之间更改安装数据库的异步线程。

具体而言,应在异步自定义作中避免调用 MsiGetTargetPathMsiSetTargetPath。 请改用 MsiGetProperty 来获取目标路径。 应在任何类型的自定义作中避免批量数据库作,例如导入、导出和转换作。

可以在 CustomAction 表的 Type 字段中设置选项标志,以指定主线程和自定义作线程同步或异步运行。 请参阅 自定义作返回处理选项

安装程序只能执行 回滚自定义作并发安装作作为同步自定义作。