我刚刚下载的工具在IDE中,在当前项目的根目录中打开Visual Studio命令提示符。我的主要抱怨是它打开了一个旧式命令窗口,我宁愿有一个PowerShell窗口。根据{{3}},这个简单的改变应该允许这样:
cmd.exe /k ""%VS120COMNTOOLS%VsDevCmd.bat" & powershell"
当我从VS 2015外部发出此命令时,它似乎工作正常,并给我一个PowerShell窗口。然而,当我尝试从VS内部运行它时,使用该实用程序的菜单项,它给了我这个错误:
无法加载PSReadline模块。控制台在没有PSReadline的情况下运行。 。 :文件 C:\用户\布雷迪\文档\ WindowsPowerShell \ Microsoft.PowerShell_profile.ps1 无法加载,因为在此系统上禁用了运行脚本。 有关更多信息,请参阅about_Execution_Policies at this post。在行:1 char:3 +。 ' C:\用户\贝迪\文件\ WindowsPowerShell \ Microsoft.PowerShell_pr ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~ + CategoryInfo:SecurityError:(:) [],PSSecurityException + FullyQualifiedErrorId:UnauthorizedAccess PS C:\ Development \ vNext \ Commerce \ src \ Commerce.Test>获取 - 执行 - 政策 PS C:\ Development \ vNext \ Commerce \ src \ Commerce.Test> Get-ExecutionPolicy受限
我的全局执行政策是RemoteSigned
,但在显示错误的同一窗口中,当我运行Get-ExecutionPolicy
时,返回的值为Restricted
。
我尝试修改我的命令以包含PS开关:
cmd /k ""%VS140COMNTOOLS%VsDevCmd.bat" & powershell -ExecutionPolicy Bypass"
但这仍然给我完全相同的错误。
@PetSerAl在评论
中建议的命令输出[Environment]::Is64BitOperatingSystem;[Environment]::Is64BitProcess;Get-ExecutionPolicy -List
给出了两个不同的结果。 VS外部的正常PS窗口中的第一个:
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine RemoteSigned
我在VS中可以找到的唯一PS窗口中的第二个,包管理器:
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process RemoteSigned
CurrentUser Undefined
LocalMachine Undefined
答案 0 :(得分:1)
您可以配置外部命令,也可以选择为其配置击键。
我刚刚在我的VS2015中做到了......整洁!
创建cmd文件
创建cmd文件以调用VsDevCmd.bat
(VS2015的开发人员命令提示符),然后调用PowerShell。
<强> dev14powershell.cmd 强>
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"
powershell -ExecutionPolicy Bypass
配置外部工具
工具 - &gt;外部工具
调用上面的cmd文件,从Solution Dir(可配置)
开始运行新的外部工具
<强>结果强>
在解决方案目录中启动了一个新的命令窗口。
可选,配置键盘快捷键
工具 - &gt;选项 - &gt;键盘
搜索external
并记住您创建的命令的编号/顺序(在我的情况下为4)
点击分配,你有: