Я просто создал элемент контекстного меню "Открыть PowerShell Here", добавив ключи "shell", "powershell" и "command" в соответствующее место в реестре Windows. Значением по умолчанию "command" был путь к моему powershell.exe с использованием обратной косой черты в качестве escape-символа вместо того, чтобы заключать весь путь в двойные кавычки.
Это привело к тому, что окна cmd были открыты с выполнением powershell, то есть окно было маленьким, черным и иначе отформатировано в стиле командной строки по умолчанию.
Когда я изменил путь, чтобы не было обратной косой черты в качестве escape-символов, а вместо этого заключить весь путь в двойные кавычки, не внося никаких других изменений, как обычно, вместо этого открылось обычное, большее, синее окно PowerShell.
Мне интересно, какие изменения вносят двойные кавычки в реестр? Как они изменяют исполнение в этом случае и почему?
Ключи, о которых идет речь:
C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe
а также
"C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe"
Первый ключ открывает стандартное черное окно командной строки с запущенной PowerShell, а второй - знакомое синее окно "PowerShell".
Обратите внимание, что ключ для запуска Powershell в определенной папке имеет аргументы в конце, которые здесь намеренно опущены, так как это ключи, которые я тестировал и которые дают разные результаты.