Program Tip

ExecutionPolicy 동작이 Visual Studio의 프로젝트마다 다른 이유는 무엇입니까?

programtip 2020. 11. 16. 22:04
반응형

ExecutionPolicy 동작이 Visual Studio의 프로젝트마다 다른 이유는 무엇입니까?


특정 PC에서 꽤 오랫동안 NuGet을 사용해 왔습니다. 이제 VS2010에서 새 프로젝트를 만들었습니다 (중요한 경우 단일 페이지 앱 템플릿을 사용하는 MVC 4 베타 프로젝트). 내가 선택할 때

도구 / 라이브러리 패키지 관리자 / 패키지 관리자 콘솔

콘솔 창이 열리지 만 오류가 표시됩니다.

파일 C : \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ Extensions \ Microsoft Corporation \ NuGet Package Manager \ 1.7.30402.9028 \ Modules \ NuGet \ profile.ps1에서 스크립트 실행이 비활성화되어 있으므로로드 할 수 없습니다. 이 시스템. 자세한 내용은 "get-help about_signing"을 참조하십시오.

그러나 다른 프로젝트는 여전히 패키지 관리자 콘솔을 열고 사용할 수 있습니다.

각각의 경우 VS2010은 동일한 사용자로 실행됩니다.

명령 프롬프트를 열면 (VS2010이 실행중인 동일한 계정 사용) PowerShell을 시작하고 다음 명령을 입력합니다.

Get-ExecutionPolicy

PowerShell 반환

한정된

Scott Hanselman 블로그를 기반으로 한 내 이해 는 ExecutionPolicy가 제한되면 스크립트가 전혀 실행되지 않아야한다는 것입니다.

기존 프로젝트는 패키지 관리자 콘솔을 사용할 수 있지만 새 프로젝트는 사용할 수없는 이유는 무엇입니까?

업데이트 : ExecutionPolicy를 AllSigned로 변경 하고 VS2010을 다시 시작하면 즉각적인 문제가 해결되지만 내 주요 질문은 다른 프로젝트가 설정된 ExecutionPolicy를 우회 할 수 있었던 이유입니다. VS2010은 관리자로 실행 되지 않습니다 .


나는 같은 문제를 경험하고 다음과 같이 해결했습니다.

  • 관리자로 Powershell 열기
  • 다음 명령 "Set-ExecutionPolicy RemoteSigned"입력
  • Visual Studio를 다시 시작하면 패키지 관리자 콘솔이 예상대로 작동합니다.

그러나 Powershell이 ​​경고를 제공한다는 점에 유의하는 것이 중요합니다.

"실행 정책은 신뢰하지 않는 스크립트로부터 사용자를 보호하는 데 도움이됩니다. 실행 정책을 변경하면 about_Execution_Policies 도움말 항목에 설명 된 보안 위험에 노출 될 수 있습니다. 실행 정책을 변경 하시겠습니까?"

이 기능을 활성화 할 때주의해야하며 보안 위험에 대한 도움말 항목의 자세한 정보를 읽어야합니다.


Murries의 답변 외에도 jellonek의 게시물 (다른 스레드)이 도움이된다는 것을 알았습니다 . 다른 버전의 PowerShell에서 권한을 변경해야 할 수 있습니다 (32 비트 및 64 비트 버전에는 별도의 권한이 필요함).

에서 PowerShell을 32 비트 또는 64 비트 인 경우 확인하는 방법 :

  • 64 비트 PowerShell 경로 : C : \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell.exe
  • 32 비트 PowerShell 경로 : C : \ Windows \ SysWOW64 \ WindowsPowerShell \ v1.0 \ powershell.exe

또한 다음 두 가지가 모두 작동합니다.

  • Set-ExecutionPolicy RemoteSigned
  • Set-ExecutionPolicy Unrestricted

이 문제를 해결하는 또 다른 방법은 Regedit 파일을 다음 내용과 병합하는 것입니다.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell]
"ExecutionPolicy"="Unrestricted"


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell]
"ExecutionPolicy"="Unrestricted"

(NuGetPowerShellFix.txt라는 텍스트 파일을 만들고 위의 내용을 복사하여 붙여넣고 NuGetPowerShellFix.reg로 이름을 바꾼 다음 실행합니다.)


위 파일을 병합 한 후 Visual Studio를 다시 시작합니다.


Visual Studio 2013에서 NuGet을 사용 중이고이 성가신 오류가 발생하는 경우 도구 | NuGet 패키지 관리자 | 패키지 관리자 설정을 클릭하고 "패키지 캐시 지우기"를 클릭하십시오. Visual Studio를 다시 시작합니다. 나는 이것에 대한 여러 가지 해결책이 있다는 것을 알고 있으므로 이것은 또 다른 시도입니다.


이 문제도 간헐적으로 발생했습니다. 나는 그것을 다시 만났고이 스레드를 만났습니다. 최근의 경우 VS 2013을 두 번 열었다는 것을 깨달았습니다 (일반적으로 문제가되지 않으며 항상 수행합니다). 문제를 해결하는 것으로 보이는 다른 사람들의 유일한 공통 주제는 상황에 따라 관리자 권한을 요구하는 것과 관련이 있었기 때문에 저는 한 번 시도하고 VS의 두 인스턴스를 모두 닫고 새 인스턴스에서 솔루션을 다시 열었습니다. 너겟 설치를 실행했으며 장애없이 작동했습니다.

이를 바탕으로이 허위 오류를 일으키는 파일 권한 문제라고 생각합니다. 디버그 세션 후 Windows가 bin 디렉토리의 파일을 잠그고 솔루션을 컴파일 할 수없는 경우와 비슷합니다.


Visual Studio를 관리자로 실행하지 않으면이 문제를 해결할 수 있습니다.

Different cause, same error message; might be helpful for someone who runs into this one.


Since we needed to create a project on a share on a remote server in our network and ran into similar problems here's what worked:

  • map the share as a network drive, say R: (but I guess it would also work without this mapping)
  • open Internet options > Security > Local intranet > Sites > Advanced (via IE or control panel)
  • add either "R:" or "file://server.domain.xy" (the former will automatically turn into the latter once you reopen the dialog)
  • run the x86 PowerShell executable and do "Set-ExecutionPolicy RemoteSigned"

Once I did all that Visual Studio didn't complain that the project was in an untrusted location upon opening the solution again, and it successfully ran all the PowerShell scripts for the packages that get auto-installed when creating a new MVC application.


I'm having this issue now, i think what worked for me easy was that i just had to restart visual studio 2013 and run it as administrator...worked fast for me.

참고URL : https://stackoverflow.com/questions/10457039/why-does-executionpolicy-behavior-vary-across-projects-in-visual-studio

반응형