Запустите из Admin, этот код работает в Windows XP.

set app=ExtrNS.exe
set nam=ExtrNS@
REG ADD "HKLM\SOFTWARE\Classes\Directory\shell\%nam%\command" /v "" /t REG_SZ /d """"%CD%\ExtrNS.exe""" """%%1"" /f

В Windows 7 результатом является не домашний каталог, а "C:\Windows\ExtrNS.exe" "%1"

1 ответ1

0

Результат не домашний каталог, а "C:\Windows\ExtrNS.exe" "% 1"

%CD% имеет значение текущего каталога, который будет каталогом, из которого выполняется пакетный файл.

Если вы хотите использовать "Домашний каталог" пользователя, используйте %UserProfile% вместо %CD% .


Под домом я имел в виду, где файл .exe не является домашним каталогом пользователя.

Самый простой способ сделать это - включить путь к файлу .exe как часть переменной app :

set app=c:\path_to_appp\ExtrNS.exe
  • Измените path_to_app в соответствии с вашим компьютером.
  • Удалите %CD%\ как теперь он не нужен.

Стандартные (встроенные) переменные среды

  • CD - текущий каталог (строка).

  • USERPROFILE -% SystemDrive%\Users\{имя пользователя}

    Это эквивалентно переменной среды $ HOME в Unix/Linux

Исходные переменные среды Windows


Дальнейшее чтение

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .