如果您的 Windows 设备已在 Windows 设备管理服务中注册,则可以通过在管理控制台中添加自定义设置来为这类设备安装软件。您需要以 XML 文件指定应用的 MSI 文件位置,然后使用该文件配置自定义设置的值。
第 1 步:获取所需的应用详情并创建 XML 文件
要创建 XML 文件,您需要应用的网址、文件哈希值和产品 ID。
在 Windows 设备上,下载您要部署的 MSI 文件。
注意:应用安装文件必须可以从供应商网站或您 IT 管理员用于托管文件的服务器位置(可通过 http、https 或 ftp 协议访问)获取。
例如,您可以从 https://www.7-zip.org/a/7z1900-x64.msi 下载 7‑Zip 安装文件。
打开 PowerShell。
如需获取文件哈希值,请运行命令 Get‑FileHash ‑Path PathToFile ‑Algorithm SHA256,其中 PathToFile 是应用安装文件的路径。记录 PowerShell 返回的哈希值(由 64 个字符组成的字符串)。
例如,如果 7-zip MSI 文件位于“下载”文件夹中,请运行命令 Get‑FileHash ‑Path C:\Users\*用户名*\Downloads\7z1900‑x64.msi ‑Algorithm SHA256
如需获取商品 ID,请执行以下操作:
将以下 PowerShell 脚本复制到文本编辑器中,并将该文件保存为 Get-MSIFileInformation.ps1。
param( [parameter(Mandatory=$true)] [IO.FileInfo]$Path, [parameter(Mandatory=$true)] [ValidateSet("ProductCode","ProductVersion","ProductName")] [string]$Property ) try { $WindowsInstaller = New-Object -ComObject WindowsInstaller.Installer $MSIDatabase = $WindowsInstaller.GetType().InvokeMember("OpenDatabase","InvokeMethod",$Null,$WindowsInstaller,@($Path.FullName,0)) $Query = "SELECT Value FROM Property WHERE Property = '$($Property)'" $View = $MSIDatabase.GetType().InvokeMember("OpenView","InvokeMethod",$null,$MSIDatabase,($Query)) $View.GetType().InvokeMember("Execute", "InvokeMethod", $null, $View, $null) $Record = $View.GetType().InvokeMember("Fetch","InvokeMethod",$null,$View,$null) $Value = $Record.GetType().InvokeMember("StringData","GetProperty",$null,$Record,1) return $Value } catch { Write-Output $_.Exception.Message }在 PowerShell 中,运行命令 *PathToScript*\Get‑MSIFileInformation.ps1 ‑Path PathToFile ‑Property ProductCode,其中 PathToScript 是 PowerShell 脚本的位置,而 PathToFile 是 MSI 安装文件的路径。
例如,如果您将 PowerShell 脚本保存到“桌面”文件夹中,要获得 7-Zip 的产品代码,请运行命令 C:\Users*username\Desktop\Get‑MSIFileInformation.ps1 ‑Path C:\Users*username\Downloads\7z1900‑x64.msi ‑Property ProductCode
商品 ID 是以英文方括号括起的字母数字字符串。例如,{23170F69-40C1-2702-1900-00001000000}。
创建 XML 文件:
将以下 XML 复制到文本文件中:
<MsiInstallJob id=""> <Product Version="1.0.0"> <Download> <ContentURLList> <ContentURL>MSI-URL</ContentURL> </ContentURLList> </Download> <Enforcement> <CommandLine>/quiet</CommandLine> <TimeOut>5</TimeOut> <RetryCount>3</RetryCount> <RetryInterval>5</RetryInterval> </Enforcement> <Validation> <FileHash>{FileHash}</FileHash> </Validation> </Product> </MsiInstallJob>在
<ContentURL>标记中,将 MSI-网址 替换为 MSI 文件的网址。在
<FileHash>标记中,将 FileHash 替换为 MSI 文件的文件哈希值。您必须将文件哈希值括在大括号中,例如:<FileHash>{A7803233EEDB6A4B59B3024CCF9292A6FFFB94507DC998AA67C5B745D197A5DC}</FileHash>。如有需要,请更新
<Enforcement>标记中的安装参数。有关详情,请参阅相关 Microsoft 文档。保存文件。
第 2 步:添加自定义设置
-
在 Google 管理控制台中,依次点击“菜单”图标
设备
移动设备和端点
设置
Windows。
需要拥有服务和设备管理员权限。
- 点击自定义设置。
- 点击添加自定义设置。
配置自定义设置:
- 在 OMA-URI 字段中,输入 EnterpriseDesktop,然后选择 ./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/
/DownloadInstall 。 在 OMA-URI 中,将
替换为 MSI 产品 ID,并对括号进行编码。为确保格式正确,请输入 %7BProductID%7D,其中 %7B 是“{”的编码形式,而 %7D 是“}”的编码形式。 例如,7-Zip 的 OMA-URI 字符串是 ./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/%7B23170F69-40C1-2702-1900-00001000000%7D/DownloadInstall
选择 OMA-URI 后,名称字段将更新为“DownloadInstall”。输入包含应用名称的唯一名称,以便在自定义设置列表中识别。例如,“Install 7-zip v19.0”。
在数据类型中选择字符串 (XML),点击上传 XML,然后选择您在第一部分创建的 XML 配置文件。
(可选)输入说明。
- 在 OMA-URI 字段中,输入 EnterpriseDesktop,然后选择 ./Device/Vendor/MSFT/EnterpriseDesktopAppManagement/MSI/
要继续操作并选择要应用此自定义设置的组织部门,请点击下一步。如果您要开始配置其他自定义设置,请点击再添加一项。在您点击下一步并选择组织部门之前,这些政策不会应用于任何组织部门。
选择要应用此政策的一个或多个组织部门。
点击应用。
只要用户设备已连接到互联网,系统便会在 3 小时内将应用安装到用户设备上。对于未连网的设备,系统会在设备下次连网时安装应用。
第 3 步:验证应用安装情况
您可通过多种方式确认您通过自定义设置部署的应用是否已成功安装到设备上。从应用自定义设置到设备安装应用之间会存在时间延迟,在设备上检查可以将延迟降至最低,因为您可以进行手动同步。
在设备上
- 在设备上,打开设置,然后找到由 Google 管理。
- 如果应用安装成功,则会出现在应用部分中的由 Google 管理的区域下方。
- 如果应用未出现在列表中,请执行 2 次手动同步,确保将自定义设置应用到设备。在安装过程中,应用会显示其产品 ID。安装完毕后,应用会显示其名称。
- 如果执行手动同步后,应用仍未安装成功,请检查自定义设置值,确保其正确无误。
在管理控制台中的设备应用清单内
卸载应用
您可以卸载通过自定义设置安装的应用。但您无法使用自定义设置来卸载通过其他方法安装的应用。
-
在 Google 管理控制台中,依次点击“菜单”图标
设备
移动设备和端点
设置
Windows。
需要拥有服务和设备管理员权限。
- 点击自定义设置。
- 在左侧,找到您要为哪个组织部门卸载应用,然后点击该组织部门。如需为所有用户卸载应用,请选择顶级组织部门。
将光标指向自定义设置,然后点击删除或停用。如需确认删除,请点击删除。
如果您选择的是继承自定义设置的下级组织部门,那么您只能停用自定义设置,因为您无法为组织的其余部门删除该自定义设置。如果您改变了主意,则可以点击继承,这样就能重新为下级组织部门安装应用。
Google、Google Workspace 以及相关标志和徽标是 Google LLC 的商标。其他所有公司名和产品名是其各自相关公司的商标。