代码之家  ›  专栏  ›  技术社区  ›  Aaron Carlson

在安装期间创建的系统环境变量在重新启动之前对当前用户不可用

  •  2
  • Aaron Carlson  · 技术社区  · 16 年前

    我有一个由wix生成的msi包,它通过填充 Environment table .

    <Environment Id="CreateEnvVar" Name="DATADIR" Action="set"
            System="yes" Part="all" Value="[DATA_DIR]" />
    

    安装成功地在系统级别创建了环境变量。这是通过查看 Environment Variables 对话来自 System Properties

    但是,在重新启动计算机之前,当前登录的用户无法访问新创建的环境变量(我假设注销然后重新登录也可以工作)。只是还没试过)。执行刚安装的应用程序失败,因为它无权访问 DATADIR 变量。

    此外,在安装完成后打开命令提示 数据中心 执行时不显示变量 set 命令。

    我理解,在执行msi之前启动的进程不会得到新的变量。然而,为什么在添加环境变量之后,一个进程就不能启动,得到新的变量呢?

    仅供参考,我正在Windows Server 2003上安装,我通过远程桌面登录,用户位于 Administrators 组。

    1 回复  |  直到 16 年前
        1
  •  2
  •   Mick    16 年前

    您是通过远程桌面安装的吗?如果是,请确保您正在使用管理控制台会话。

    为此,请使用以下方法启动远程桌面:

    MSTSC/ADMIN

    或者,如果您使用的是最新版本的RDP,那么现在它是:

    MSTSC/控制台

    尝试从此会话(或本地)安装它,并告诉我结果。