如何使用 GPO 部署 .exe 安装

Alex Bav 2017 年 1 月 19 日

众所周知,.exe 文件无法使用 GPO 软件安装进行部署。 如果应用程序安装程序仅作为 .exe 文件出现,则很难在 Active Directory 环境中部署该应用程序。 但是,可以通过三种方式在不使用第三方部署工具的情况下做到这一点。

使用 .zap 文件进行部署(零管理包)

这是微软建议的一种通过 GPO 部署 .exe 安装的旧方法。 zap 文件部署目前很少使用,因为有很多限制。 主要缺点是 ZAP 文件不会在用户登录或系统启动时自动运行。 相反,用户必须访问控制面板才能从此处安装应用程序。

通过登录脚本部署 .exe

此方法更灵活,但需要一些脚本编写技巧。 您需要创建一个 cmd 文件来执行带有命令行开关的 .exe 安装。 这些命令开关需要静默运行安装,即无需用户交互。 此外,您需要添加一些条件来防止脚本多次运行安装。 以下是 cmd 脚本的示例。

@echo off
reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\theapp >nul
if %errorlevel% equ 0 (
    echo "already installed - do nothing"
) else (
    pushd \\server\share
    setup.exe /S
)

.cmd 文件应位于域控制器上的“NETLOGON”共享中,并在 GPO 中配置为计算机启动脚本。 计算机启动脚本始终在 SYSTEM 帐户下执行,与登录的用户无关。

将 .exe 安装包装到 msi 中。

此方法允许部署具有通过 GPO 软件安装部署的所有优势的 .exe。 MSI 安装程序以通用方式运行,但不写入文件和注册表更改,仅运行一个 msi 自定义操作,该操作使用给定参数执行 .exe 安装。 您只需要创建一个带有自定义操作的空 msi 包。 有一个工具可以做到这一点 - Exe 到 msi 转换器。

使用 Exe 到 msi 转换器
  1. 选择您要打包的 exe 安装程序文件。
  2. 指定命令行参数以静默模式运行 exe 安装程序。
  3. 点击 Bulld MSI
  4. 将在 exe 安装程序文件的目录中创建 msi 文件。

Exe 到 msi 转换器下载链接: exetomsiSetup.msi