我在我的项目中添加了批处理(.bat)文件。我想为在命令提示符窗口中实际执行此批处理文件的批处理文件添加新的编辑器。
我做了什么,但没有记住我的编辑:
当我再次打开相同的打开... 对话框时,我的编辑器不存在。
我该如何解决这个问题?
答案 0 :(得分:13)
确定。我自己设法解决了这个问题 因为我found on the internet这是一个Visual Studio错误,所以它不记得这些编辑器(参数化的可执行文件名)。但是,尽管如此。解决方案是这样的:
将此代码放入其中:
@cmd /c %1
然后通过指向此 ExecuteBatch.cmd 文件在Visual Studio中添加新编辑器。
瞧。 问题已解决。详细说明可以in this blog post。
答案 1 :(得分:3)
根据建议here,您还可以使用“打开方式”PowerShell,而不必担心任何参数。
该链接的说明是:
您可以从中运行.bat文件 解决方案探索者直接通过 关联的默认行为 Powershell的“.BAT”扩展。
- 右键单击解决方案资源管理器
中的批处理文件- 从上下文菜单中选择“打开方式...”
- 点击“添加...”
- 在“程序名称”文本框中,指定PowerShell的完整路径 (“\ Windows \ System32下\ WindowsPowerShell \ V1.0 \ powershell.exe”)
- 在“友好名称”文本框中输入“PowerShell”
- 选择“设为默认值”
- 点击确定
醇>现在,当您双击批次时 解决方案资源管理器中的文件,它会 shell out to powershell and execute。
适合我。
答案 2 :(得分:2)
扩展了Robert和Rustam的答案,这里是RunBatch.bat脚本,我用它作为“Open With”程序从Visual Studio运行批处理文件:
@cd %~dp1
@call "%~n1%~x1"
第一行导航到文件的文件夹,第二行导航文件。
这将保留Visual Studio 2012及更高版本中的工作目录,并且还支持文件名中包含空格的批处理文件。
答案 3 :(得分:1)
其他建议:在VS2012中,您只需使用cmd.exe即可。
但是!缺点是你的bat文件将在VS home文件夹中启动,而不是在你的soultion的文件夹中。这就是为什么我使用this recipe,但延长了一点。我的.bat文件是:
:: Navigate to file's folder
@cd %~dp1
:: Run file in its folder
@cmd /c %~n1%~x1
语法解释here
答案 4 :(得分:0)
我刚刚告诉visual studio用windows explorer打开.bat文件;)