将当前文件名传递给Visual Studio调试命令行参数

时间:2013-06-24 12:54:40

标签: visual-studio debugging

我正在VS 2012中创建PowerShell模块。因此,为了在调试项目属性中进行舒适的调试,我将Start操作设置为启动外部程序PowerShell.exe,并在命令行参数中添加我要添加的内容 -Command {Import-Module [MyDllFileName]}。我该怎么写而不是[MyDllFileName]?应该有我编译的dll。

1 个答案:

答案 0 :(得分:1)

在链接问题中支持的答案仍然非常有效,但你必须考虑一下。

首先,实际答案仍然存在:使用项目设置根本无法将程序集名称输入调试命令行。

其次,你可以做几件事:

  1. 调试器命令行作为LocalDebuggerCommandArguments属性存储在projectname.vcxproj.user文件中。写一个脚本/扩展名/ ...将该属性设置为$(TargetPath)然后离开。

  2. 根据其他问题中提出的解决方案:使用类似devenv /DebugExe powershell.exe - Command { Import-Module $(TargetPath) }之类的外部工具。

  3. 与2一样,但在你的dll中放置一个DebugBreak()语句,然后启动PowerShell,当它看到DebugBreak / add时,它会发出昏迷并要求附加调试器。