C#UI自动测试-是否有人成功捕获了命令提示符窗口对象?

C#UI自动测试-是否有人成功捕获了命令提示符窗口对象?,c#,.net,user-interface,cmd,automation,C#,.net,User Interface,Cmd,Automation,我有一个用White开发的UI自动测试。其中一个案例需要打开cmd并编写一些命令。问题是当我输入第一个命令时我尝试了以下方法: Process.Start("CMD.EXE"); ///Thread.Sleep(2000); SendKeys.SendWait(command); 问题是sendkeys在打开窗口之前开始输入,并修剪命令,跳过第一个字符(取决于窗口外观)。这对睡眠有效,但我正试图避免这种做法。 为了避免这种情况,我会插入一个计时器,等待窗口可见。所以我的问题是: 这个窗口

我有一个用White开发的
UI
自动测试。其中一个案例需要打开
cmd
并编写一些命令。问题是当我输入第一个命令时
我尝试了以下方法:

Process.Start("CMD.EXE");

///Thread.Sleep(2000);

SendKeys.SendWait(command);
问题是
sendkeys
在打开窗口之前开始输入,并修剪命令,跳过第一个字符(取决于窗口外观)。这对睡眠有效,但我正试图避免这种做法。 为了避免这种情况,我会插入一个计时器,等待窗口可见。所以我的问题是:

  • 这个窗口能被捕获,这样我就可以等待它了吗

  • 还有其他发送命令的方法吗

对于这种特殊情况,您可以执行cmd以args形式运行命令,我的意思是,避免sendKeys并像这样执行cmd:
Process.Start(“cmd.EXE”,“/c echo hello world”)


请注意,/c将执行cmd并退出,而/k执行cmd并返回cmd提示符。

对于这种特殊情况,您可以执行cmd以args的形式运行命令,我的意思是,避免sendKeys并像这样执行cmd:
Process.Start(“cmd.EXE”,“/c echo hello world”)


请注意,/c将执行cmd并退出,/k执行cmd并返回cmd提示符。

我不确定您是否应该使用SendKeys与命令提示符交互。您使用StandardInput进行过调查吗?我不确定您是否应该使用SendKeys与命令提示符交互。您使用StandardInput进行过调查吗?这也是我的决心。谢谢这也是我的决心。谢谢