Windows 레지스트리에서 “NoWorkingDirectory”문자열 값의 의미는 무엇입니까? 정의 Right-Click 메뉴 항목이 작성 될

빈 “NoWorkingDirectory”문자열 값은 사용자 정의 Right-Click 메뉴 항목이 작성 될 때 Windows 레지스트리에서 자주 사용됩니다. 예를 들어 Windows 탐색기에서 폴더를 마우스 오른쪽 단추로 클릭 할 때 PowerShell을 열려면 (폴더 자체를 마우스 오른쪽 단추로 클릭하는 경우와 달리 “NoWorkingDirectory”는 사용하지 않음) :

[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell]
@="Open PowerShell Here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell\command]
@="C:\\\\Windows\\\\System32\\\\WindowsPowerShell\\\\v1.0\\\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

그러나 나는이 가치의 실제 목적에 대해 명확하지 않다. 내가 찾은 모든 샘플에서 항상 빈 상태로 사용됩니다. 그것은 정확히 무엇을 의미합니까?



답변

WorkingDirectory는 System.Diagnostics.ProcessStartInfo의 속성입니다. 마우스 오른쪽 단추를 클릭하면 새 프로세스가 시작되고이 설정을 사용하면 현재 디렉터리가 “작업 디렉터리”가되지 않고 프로세스를 시작할 수 있습니다. 그런 다음 실행중인 명령에 대해 System32로 기본 설정됩니다.

따라서 마우스 오른쪽 버튼으로 클릭 한 위치가 스크립트 기간 동안 환경 경로의 일부가되지 않도록하려면 “NoWorkingDirectory”를 사용하십시오. “NoWorkingDirectory”가 지정되어 있지 않으면 끈적 거리는 여러 경로 위치에 비슷한 이름의 파일이있는 경우가 아니라면 90 %의 경우에 쓸모없는 설정.

자세한 내용은 여기를 참조하십시오.

http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.workingdirectory%28v=vs.110%29.aspx