"a msi property can be passed to the server side when doing a managed installation?" 是什么意思

What does it means that "a msi property can be passed to the server side when doing a managed installation?"

什么是托管安装? "a msi is running at server side" 是什么意思? "a msi property can be passed to server side" 是什么意思?

本题来自wix documentation of "Property" element "Secure" attribute:

Denotes that the Property can be passed to the server side when doing a managed installation with elevated privileges. See the SecureCustomProperties Property for more information.

Windows 安装程序处理 UI 序列,然后处理执行序列。 UI 序列运行客户端 (msiexec /I ..... ),当您单击最后的继续安装按钮时,它会转换到服务器端 (msiexec.exe 运行 作为 MSIServer服务)。在 Windows NT4.0-XP 中有一个模式,管理员可以 "bless" 非 priv 用户安装的安装程序。安装程序中内置了某些安全沙箱,以防止非特权用户在这种情况下使用 MSI 拥有一个盒子。从 Windows Vista 和 UAC 开始,这种托管安装程序模式在大多数情况下使用,因为客户端以非特权启动,然后在传输到服务器端时通过 UAC 提示变为特权。

"SecureCustomProperties" 属性 所做的是允许 MSI 作者说以下 MSI 属性是 "trusted" 并且可以从 UI 传递到 Execute (客户端 -> 服务器)在这种情况下。几乎所有与自定义 UI 在 MSI 中工作相关的属性都应标记为 Public 和安全。同时升级 table 个条目。

下面的link与问题相关但不直接解决问题。理解 MSI 和这个主题仍然是 "required reading"。

Installation Phases and In-Script Execution Options for Custom Actions in Windows Installer