我在特定的 PC 上使用 NuGet 已经有一段时间了。现在,我在 VS2010 中创建了一个新项目(如果重要的话,它是一个使用单页应用程序模板的 MVC 4 Beta 项目)。当我选择
工具/库包管理器/包管理器控制台
控制台窗口打开,但显示错误:
文件 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”。
但是,其他项目仍然可以打开和使用 Package Manager Console。
在每种情况下,VS2010 都以同一用户身份运行。
如果我打开命令提示符(使用运行 VS2010 的同一帐户),启动 PowerShell,然后输入命令
获取执行策略
PowerShell 返回
受限制的
我基于Scott Hanselman 博客的理解是,如果 ExecutionPolicy 受到限制,则脚本根本不应该运行。
为什么现有项目能够使用包管理器控制台,而新项目却不能?
更新:将 ExecutionPolicy 更改为 AllSigned并重新启动 VS2010 解决了眼前的问题,但我的主要问题是为什么其他项目能够绕过已建立的 ExecutionPolicy。VS2010没有以管理员身份运行。