Назад | Перейти на главную страницу

Когда переменная среды Windows будет HOMEPATH = \

set HOME
HOMEDRIVE=C:
HOMEPATH=\
USERDOMAIN=user01
USERNAME=user01
USERPROFILE=C:\Documents and Settings\user01

Microsoft Windows XP [Version 5.1.2600]

На ящиках Windows, которые я тестировал до сих пор, USERPROFILE=%HOMEDRIVE%%HOMEPATH%

Когда я изначально решил пойти с HOMEDRIVE/HOMEPATH, Я прочитал статью, в которой говорилось, что это самый безопасный способ.

Что могло бы вызвать HOMEPATH быть /?

Если команды необходимо выполнить на этом компьютере, поместите их в виде командного файла. Спасибо.

HOMEPATH может иметь значение, эквивалентное% USERPROFILE% или корню% HOMEDRIVE%. Для сценариев, которые вы пишете для DOS / CMD в современных версиях Windows (XP / Vista), вы должны использовать% USERPROFILE%.

Тем не менее, если вы пишете приложение (или vbs и т. Д.), Получите список папок оболочки из Windows, поскольку он (как правило) более точен / надежен, чем% userprofile%.

я узнал что USERPROFILE НЕ идентичен %HOMEDRIVE%%HOMEPATH%

Вкратце:

  1. С перемещаемыми профилями: HOMEPATH - это перемещаемое местоположение, а USERPROFILE - это локальное местоположение (см. git-wrapper.c)
  2. например когда вы используете вторичный вход run as, HOMEDRIVE, HOMEPATH не будут обновляться, а HOMEPATH всегда будет \Windows\system32 для каждого пользователя (см. значение-переменные-homedrive-homepath почему это происходит)

Чтобы прочитать полный выпуск проверки контекста git-for-windows # 2709

РЕДАКТИРОВАТЬ: Я узнал, что HOPMEPATH будет \ когда вы используете сетевые профили, как вы можете прочитать в как-сделать-я-изменить-homedrive-homepath-and-homeshare-in-windows-xp