版本:Unity 6 (6000.0)
语言:英语
在企业中部署 Unity
通过 Web 代理使用 Unity

允许标准用户安装 Unity(Windows)

默认情况下,安装 Unity 编辑器需要管理员权限。

从 2023.1 版本开始,您可以在 Windows 上允许标准用户在没有提升权限的情况下安装 Unity 编辑器。

启用后,此功能可以减少管理员的参与,他们只需要安装 Unity 安装程序检测到的 缺少的依赖项(例如 Visual C++ 运行时库)。这些依赖项很少改变,因此标准用户在安装其他 Unity 编辑器实例时不需要管理员的干预。

开始之前

确保您对 C:\ProgramData\Unity\config 文件夹具有写入权限。

编辑 JSON 文件时请务必遵循以下做法

  • 使用直线双引号 (""),而不是弯引号 (“”)。
  • 用逗号分隔键值对。
  • 使用验证器检查 JSON 语法。您可以使用 PowerShell 中的 Get-ContentConvertFrom-Json cmdlet,如 此示例 所示。

步骤

要允许标准用户安装 Unity 编辑器,请执行以下操作

  1. 确保以下路径存在。如有必要,创建其中的任何文件夹

    C:\ProgramData\Unity\config
    
  2. 确保以下文件存在。如有必要,创建它

    C:\ProgramData\Unity\config\services-config.json
    

    如果您需要创建该文件,请确保它至少包含以下内容

    {  
    }
    
  3. services-config.json 中的括号之间添加以下条目

    "hubDisableElevate": true
    
  4. 可选:要允许同一台计算机上的多个用户共享 Unity 编辑器二进制文件而不重复安装同一个版本,请创建一个所有 Unity 编辑器的公共目标文件夹,例如 C:\UnityEditors重要提示:请确保您为所有用户授予对该文件夹的读取写入权限。

  5. 可选:如果您在上一步骤中创建了公共文件夹,请将 machineWideSecondaryInstallLocation 键添加到 services-config.json,以使 Unity Hub 使用该文件夹。使用上一步骤中的文件夹,该条目如下所示

    "machineWideSecondaryInstallLocation": "C:\\UnityEditors"
    
  6. 退出 Unity Hub 并确保它已停止,而不仅仅是最小化到任务栏。

示例配置文件

使用上述步骤中的值,示例 services-config.json 文件如下所示

{
  "hubDisableElevate": true,
  "machineWideSecondaryInstallLocation": "C:\\UnityEditors"
}

下一步

现在,标准用户的计算机能够在没有管理员干预的情况下安装 Unity 编辑器,除非存在依赖项。管理员必须安装任何依赖项。

缺少依赖项警告

以下是一个标准用户可能会看到的依赖项警告示例

Warning for missing dependencies that an administrator must install
管理员必须安装的缺少依赖项的警告

缺少依赖项列表

如果标准用户收到有关缺少依赖项的警告,安装程序会将依赖项列表写入文本文件。警告会标识该文本文件的位置。管理员必须安装这些依赖项,标准用户才能稳定地使用 Unity。

以下是一个 Unity 安装程序可能生成的缺少依赖项列表示例

Dependency: Visual C++ 2010 runtime (x64)
Download location: https://www.microsoft.com/en-ca/download/details.aspx?id=26999
Local Installer: C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\MissingDependencies\vcredist_x64_2010.exe
 
Dependency: Visual C++ 2013 runtime (x64)
Download location: https://www.microsoft.com/en-ca/download/details.aspx?id=40784
Local Installer: C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\MissingDependencies\vcredist_x64_2013.exe
 
Dependency: Visual C++ 2015 runtime (x64)
Download location: https://www.microsoft.com/en-ca/download/details.aspx?id=48145
Local Installer: C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\MissingDependencies\vcredist_x64_2015.exe
 
Make sure that the following rules are set:
netsh advfirewall firewall delete rule name=all program='C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\Editor\Unity.exe'
netsh advfirewall firewall delete rule name=all program='C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\Editor\Data\Tools\nodejs\node.exe'
netsh advfirewall firewall add rule name='Unity 2023.1.0a5 Editor' dir=in action=allow program='C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\Editor\Unity.exe' profile=domain protocol=any
netsh advfirewall firewall add rule name='Unity 2023.1.0a5 Editor' dir=in action=block program='C:\Users\nonadmin\AppData\Local\Unity 2023.1.0a5\Editor\Unity.exe' profile=public protocol=any

其他资源

在企业中部署 Unity
通过 Web 代理使用 Unity