Как сделать так, чтобы «копировать как путь» появлялось в контекстном меню проводника Windows без клавиши Shift?

13

Если при открытии контекстного меню проводника Windows удерживать клавишу shift, появляется дополнительный пункт «Копировать как путь». Как я могу сделать так, чтобы он всегда появлялся без необходимости держать смену?

Я использую Windows 10.

Полковник паника
источник
Я удивлен, что это не сработало; на какой версии Windows вы работаете?
Дейв
2
это отлично работает В расширенные средства управления входа , если запись не отображаются по умолчанию и должны быть открыты с помощью Shift. Я использую это, чтобы скрыть записи, которые я использую не очень часто.
magicandre1981
Хитрость в другом вопросе работает только для пункта «Открыть командную строку здесь». Вот еще один потенциальный, но не рабочий ответ. superuser.com/questions/295484/…
О. Джонс

Ответы:

10

AskVG здесь имеет идеальное решение. Хотя это говорит о Windows 7, я попробовал это на моем компьютере с Windows 10, и это работает.

Вы можете скачать скрипт реестра прямо здесь . Я протестировал его, и он не содержит вредоносного кода.


Чтобы предотвратить гниение ссылок, вот содержимое файла REG. Сохраните следующее как, copyaspath.regа затем дважды щелкните для запуска.

Windows Registry Editor Version 5.00

;Created by Vishal Gupta for AskVG.com

[HKEY_CLASSES_ROOT\*\shell\Copy as Path]

[HKEY_CLASSES_ROOT\*\shell\Copy as Path\command]
@="cmd.exe /c echo | set /p=\"\"%1\"\"|clip"

[HKEY_CLASSES_ROOT\Directory\shell\Copy as Path]

[HKEY_CLASSES_ROOT\Directory\shell\Copy as Path\command]
@="cmd.exe /c echo | set /p=\"\"%1\"\"|clip"

Престижность @chunk_split для обхода удаления новой строки.

Не рутируйте здесь, плз ...
источник
Не работает для меня Командная строка только появилась и исчезла. Windows 7 32-битная.
вс
@ sunk818 Да, согласно комментариям, это не работает на Windows Xp или 7, но работает на Windows 10. Не знаю, в чем проблема, но это работает на моем компьютере :) (Windows 10 ver1511).
Не рутируйте здесь, плз ...
Проверьте мое решение . Это не делает трюк командной строки open-run-vanish .
SNag
Это работает очень хорошо, за исключением того, что в конце вводится дополнительная новая строка (из-за того, как echoработает). Вы можете использовать следующий обходной путь, чтобы избежать этого. Обратите внимание на дополнительные экранированные кавычки, экранированные 2x, впервые используя обратную косую черту для формата файла реестра Windows, чтобы получить ""необходимую set /pкоманду, в результате чего "в вашей скопированной строке будет, наконец, @="cmd.exe /c echo | set /p=\"\"%1\"\"|clip"
единица
8

Этот скрипт работает ( протестировано в Windows 10 ) без вызова командной строки:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Allfilesystemobjects\shell\windows.copyaspath]
@="Copy &as path"
"Icon"="imageres.dll,-5302"
"InvokeCommandOnSelection"=dword:00000001
"VerbHandler"="{f3d06e7c-1e45-4a26-847e-f9fcdee59be0}"
"VerbName"="copyaspath"

Он также назначает aгорячую клавишу в контекстном меню, поэтому RightClick+ aкопирует путь к файлу.

Бонус: скрипт для удаления вышеуказанных настроек:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\Allfilesystemobjects\shell\windows.copyaspath]

Скрипт Кредиты

Снимок экрана из Windows 10 Enterprise v1809, сборка 17763.437: Копировать как путь

загвоздка
источник
Я могу подтвердить, что работает на Win 10 версии 1709 64bit
Varun Sharma
Это работает до сих пор отлично, никаких грязных всплывающих окон.
Ласси Киннунен
В Windows 7: «У этого файла нет программы, связанной с ним для выполнения этого действия ...»
Хашим,
1

Я не могу прокомментировать ответ пользователя Private, но это выглядит правильно. Вот записи реестра, необходимые из файла, который он связал.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Copy as Path]

[HKEY_CLASSES_ROOT\*\shell\Copy as Path\command]
@="cmd.exe /c echo \"%1\"|clip"

[HKEY_CLASSES_ROOT\Directory\shell\Copy as Path]

[HKEY_CLASSES_ROOT\Directory\shell\Copy as Path\command]
@="cmd.exe /c echo \"%1\"|clip"

Вы можете просто сохранить это как .reg и запустить его.

Narzard
источник
Вы не можете прокомментировать мой ответ? Вы могли только что отредактировать мой.
Не рутируйте здесь, плз ...
У меня недостаточно репутации, чтобы добавить комментарий, к сожалению.
Нарзард
или отредактировать мой пост?
Не рутируйте здесь, плз ...
1
Я редактировал пост Private. Этот пост можно смело удалять.
Инженер Тост
1
@EngineerToast: Я бы не посчитал это безопасным, если бы не было каких-либо записей об участии Нарзарда в этом вопросе;)
SamB
0

Вот файл REG:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Allfilesystemobjects\shell\CopyPath]
@="Copy Path"

[HKEY_CLASSES_ROOT\Allfilesystemobjects\shell\CopyPath\command]
@=hex(2):25,00,63,00,6f,00,6d,00,73,00,70,00,65,00,63,00,25,00,20,00,2f,00,63,\
  00,20,00,3c,00,6e,00,75,00,6c,00,20,00,28,00,73,00,65,00,74,00,2f,00,70,00,\
  20,00,61,00,6e,00,79,00,76,00,61,00,72,00,69,00,61,00,62,00,6c,00,65,00,3d,\
  00,22,00,25,00,31,00,22,00,29,00,7c,00,63,00,6c,00,69,00,70,00,2e,00,65,00,\
  78,00,65,00,00,00

( через Winhelponline ) Я удалил строковое значение «Extended».

Шестнадцатеричный код в приведенном выше REG-файле переводится в эту командную строку:

%comspec% /c <nul (set/p anyvariable="%1")|clip.exe
w32sh
источник
0

Ну, ответ SNag самый элегантный.

Ответ Root не работает, но иногда вы можете увидеть, что окно CMD постоянно вспыхивает, и оно не поддерживает неанглийские символы. Вот улучшенная версия от 1ocalhost .

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\Copy Path\command]
@="mshta vbscript:CreateObject(\"wscript.shell\").Run(\"cmd /c chcp 65001 && echo | set /p x=\"\"%1\"\" | clip\",0)(window.close)"

Поскольку в Windows XP по умолчанию нет файла clip.exe , 1ocalhost также предоставляет другую версию для Windows XP:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\AllFilesystemObjects\shell\Copy Path\command]
@="mshta vbscript:Execute(\"set o=CreateObject(\"\"InternetExplorer.Application\"\")\"&vbcrlf&\"o.Navigate(\"\"about:blank\"\")\"&vbcrlf&\"o.document.parentwindow.clipboardData.setData \"\"text\"\", \"\"%1\"\"\"&vbcrlf&\"o.Quit\"&vbcrlf&\"window.close\")"
Памела
источник