我正在尝试调试作为C#控制台应用程序编写的filter程序。该程序的用法类似于(从cmd.exe
执行):
C:\MyDir\>type inputfile.txt | myfilter.exe
我尝试了显而易见的事情:附加到cmd.exe
进程并在Main
函数中设置断点。软件运行,符号未加载,调试器没有闯入,开发人员不高兴。
在项目属性中,在Debug
下,可以设置命令行参数。我没有臭命令行参数。我希望将文件传送到STDIN
。这有多难?
答案 0 :(得分:2)
没关系,我今天不想......
您只需要在Debugger.Launch()
方法中添加Main
来电:
static void Main(string[] args)
{
Debugger.Launch();
// rest of your program goes here
}
Windows会很好,让你调试你的程序。我知道这 - 这是如何在安装项目中调试自定义操作...
答案 1 :(得分:0)
您需要附加到myfilter.exe,它从命令行启动并不重要。但是,如果您在Visual Studio中打开项目,则只需开始调试,它将自动附加。是的,您可以传入命令行参数,或者使用相关参数启动exe,然后执行或直接从visual studio转到控制台应用程序项目属性,并在调试部分中有一个命令行参数框。