这是我第一次尝试创建组策略来为我们域中的计算机安装软件产品。当我尝试添加包时,我收到以下错误:
添加操作失败。无法从包中提取部署信息。对包运行验证以确保包正确。
以下是我为达到这一点所采取的步骤:
- 在 Active Directory 中,右键单击域并选择属性
- 单击新建按钮创建一个新的组策略对象
- 命名对象
- 选择新的组策略对象并单击“编辑”按钮
- 在组策略编辑器对话框中,在计算机 | 软件设置 | 软件安装节点下,右键单击并选择新建包命令。
- MSI 文件的路径是有效的 UNC 路径(MSI 文件所在的共享已与我们域内的用户共享 - 完全控制)。
- 单击“打开”选择 MSI 文件
- 在部署软件对话框中,选择“已分配”,然后单击确定
- 片刻之后(10 - 15 秒),将显示上述错误消息
我迄今为止尝试过的故障排除步骤:
- 确保服务器上尚未安装该软件
- 使用 MSI 文件在另一台机器上安装软件以确保 MSI 正常工作。
- 已验证服务器上的 Windows 卷是否具有足够的可用磁盘空间 (100+GB)。
答案1
那么,这可不是什么好事。这不是你对程序做的错事,而是 MSI 出了问题。你是自己构建的 MSI 还是第三方的?如果是第三方的,制造商是否表明 MSI 在这种部署场景中有效?
我无法告诉您应该运行哪些特定的验证,因为我不知道 Windows 在从 MSI 中“提取”“部署信息”时究竟在做什么。我知道我在一些第三方制作的相当差劲的 MSI 上看到了这种情况。我相信我最终放弃了它们,自己提取了内容,并使用 WiX 将它们重新打包成 MSI。
(这是 Windows 中我希望能够看到源代码的地方之一...)
答案2
有些 .msi 软件包不是为无人看管安装。这也许可以解释为什么手动运行时安装成功。我从 .exe 中提取 .msi 时见过几次这种情况。正如 Evan 所说,你正在尽一切努力让它工作。