Переменная среды - разрешения?Галтель?Ошибка? - PullRequest
2 голосов
/ 09 декабря 2011

Я установил переменную окружения из моего пакетного скрипта:

reg add "HKEY_CURRENT_USER\Environment" /v TOOL_CHAIN_PATH /t REG_SZ /d C:\Users\MClarkson\Documents\svn\tool-chain /f

Пакетный скрипт запускается в режиме повышенных разрешений с использованием следующего фрагмента:

rem Make sure we are running in Administrator mode
reg add HKLM\Software\UDP\WindowsInstall\aad3a310a315f101030965e3da3e15b6 /v Elevated /t REG_DWORD /d 1 /f > nul 2>&1
if %ERRORLEVEL%==1 (
    echo You must run %~nx0 in elevated mode.  Right-Click and select 'Run as Administrator'
    echo.
    pause
    exit /b 740
)
reg delete HKLM\Software\UDP\WindowsInstall\aad3a310a315f101030965e3da3e15b6 /va /f > nul 2>&1

Когда я открываю cmd.exe после запуска скрипта, я не вижу переменную среды:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\MClarkson>echo %TOOL_CHAIN_PATH%
%TOOL_CHAIN_PATH%

C:\Users\MClarkson>

Но если я открою cmd.exe от имени администратора:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Windows\system32>echo %TOOL_CHAIN_PATH%
C:\Users\MClarkson\Documents\svn\tool-chain

C:\Windows\system32>

Я вижу переменную окружения !!

Я заметил, что могу запустить исходную команду reg add от имени обычного пользователя - кажется, нет никаких ограничений на установку HKEY_CURRENT_USER, и тогда я сразу вижу переменную окружения.

Есть ли кто-то более опытный в Windows, который знает, почему обычный пользователь не может видеть раздел реестра, установленный администратором в HKEY_CURRENT_USER?

Есть ли способ выполнить команду в повышенном пакетном сценарии на неизменном уровне?

1 Ответ

1 голос
/ 12 декабря 2011

Перезапуск позволяет пользователю видеть переменную среды.Что раздражает, так как это такое простое изменение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...