Nota:
- Esta correção requer privilégios administrativos .
-
CAVEAT : porque, devido ao uso de
"..."
, o PowerShell avalia o caminho especificado, pois avaliaria um argumento internamente no PowerShell, o comando pode romper com nomes de pastas como$foo
- ou pior, resultar na execução de comandos por meio de nomes de pastas cuidadosamente criados e criados com códigos maliciosos.
Abra regedit.exe
e aplique as seguintes etapas em ambas das seguintes chaves do Registro : HKEY_CLASSES_ROOT\Directory\shell\Powershell\command
e HKEY_CLASSES_ROOT\Directory\Background\shell\Powershell\command
:
-
Preparação: modifique as permissões para que a modificação do valor (o comando do PowerShell) se torne possível:
-
Clique com o botão direito do mouse na subchave
command
e selecionePermissions...
-
Clique em
Advanced
e:- crie o grupo
Administrators
o proprietário da chave - dê ao grupo
Administrators
controle total da chave
- crie o grupo
-
Observação: não tenho conhecimento de nenhum efeito adverso dessas modificações, mas informe-nos se você souber de alguma.
No entanto, para ser seguro, você pode reverter essas modificações após modificar o comando conforme descrito abaixo, o que implica restaurar aTrustedInstaller
security principal como a proprietária da chavecommand
; Observe que você deve especificá-lo comoNT SERVICE\TrustedInstaller
.
-
-
Agora, substitua o valor
command
da chave(Default)
pelo seguinte comando:
powershell.exe -noexit -command Set-Location -literalPath \"%V\"
Deve ser possível criar um script nas etapas acima.