在使用Visual Studio调试程序之前,我希望能运行一个任务。
我需要每次调试程序时都运行这个任务,因此后构建事件并不够好用。
我查看了设置中的“调试”选项卡,但没有找到相应选项。
有什么办法可以实现这个需求吗?
在使用Visual Studio调试程序之前,我希望能运行一个任务。
我需要每次调试程序时都运行这个任务,因此后构建事件并不够好用。
我查看了设置中的“调试”选项卡,但没有找到相应选项。
有什么办法可以实现这个需求吗?
我认为你唯一可以尝试的方法是在项目属性的调试页面中尝试使用Command属性进行实验,但我不认为这会奏效。
编辑:如果你想启动一个批处理文件,请按照以下方式操作:
yourbatch.bat $(targetPath)
call %1 %2 %3 %4 %5 %6 %7 %8 %9
%2和%3代表可能的程序参数(由您的IDE提供)
我想知道的唯一一件事是您的程序是否会直接调试(我认为您可能需要在IDE中手动附加它)
#ifdef _DEBUG
doMySpecialTask();
#endif
只有在使用调试版本时才会调用它。
编辑:从下面的评论中提取信息:
要在运行时动态检测调试器,可以在 Windows 中使用 IsDebuggerPresent()
函数。Macs 也有一个 AmIBeingDebugged()
。这对于希望在调试时使程序表现不同的情况很有用,但我不建议除非没有其他有用的选项。修改程序在调试时的行为可能会导致问题消失或以不同的方式显现。
#ifdef
语句。例如,doMySpecialTask()
可以运行.bat文件或.cmd文件来启动应用程序,甚至可以启动应用程序。这将在您使用调试构建时起作用,而不仅仅是在构建时。如果您需要始终动态检测调试器,则在Windows中使用IsDebuggerPresent
函数。请参见http://msdn.microsoft.com/en-us/library/ms680345%28v=vs.85%29.aspx - Dennis
myscript.bat
,然后再调用$(TargetPath)
,你怎么在同一条命令行上调用它们呢?另外,调试器不会尝试调试myscript.bat
吗? - 0x26res