通过c#控制另一个进程的执行

时间:2009-03-15 09:10:54

标签: c# process controls external

我已经编写了一个c程序,我将代码传递给脚本并执行它并为我打印结果。有点像我发送

for i in 1 to 10
print i

它创建并运行基本上打印1到10的值的代码。 但是我想整合代码的逐步运行,我在脚本中添加了一个断点作为BP的功能,我将其传递给程序。因此,当遇到BP时,它会运行并等待用户键入continue命令“CNT”。

现在我开发了一个小的ide来编写脚本并在我的程序上运行它。但是我在通过IDE提供调试支持方面遇到了麻烦。我想实现类似于每行代码的步骤或运行整个过程(如F5,在断点被击中后)。

for i in 1 to 10
{
    print i
    BP
}

因此程序会在每一行之后停止并等待用户键入CNT。但是我希望能够在第一个断点被击中后运行整个程序。

我在c#中寻找某种方式,通过它我可以控制我附加的外部exe程序的执行。通过这种方式我可以发送命令,如运行下一行或接下来的5行等程序。任何方式,不修改底层的exe?

2 个答案:

答案 0 :(得分:0)

也许您可以尝试看看上一个问题: How does a debugger work?

(目前)最多投票答案中提供的链接将让您基本了解调试器如何在Windows平台上运行,以及如何实现自己的。

答案 1 :(得分:0)

它的答案可能很多,这取决于实施。我已经在我的程序中添加了一个功能,以便在达到断点时打印行号。这样我就可以控制执行。