我有一个程序,它必须与DOS程序交互,然后我的程序才能继续它正在做的事情。我正在努力避免我的用户不得不与这个dos程序交互。所以,我创建了一个.bat文件,它完成了我需要做的所有事情,除了最后一步,它仍然需要我试图避免的用户交互。
具体地说,我键入的命令在dos提示符下结束,我需要自动输入y,然后输入(对提示符说是),然后我想退出。
有没有什么方法可以让我的用户在不输入y和enter的情况下自动实现这一点?理想情况下,我希望在此过程中控制台窗口甚至不会弹出。
发布于 2010-03-17 03:25:58
您可以像这样将一个'y‘字符输入到程序中:
echo y | executable.exe
可以输入多行,如下所示:
(echo y
echo n) | executable.exe
...which将首先传递“y”,然后传递“n”。
请参阅来自Microsoft here的提示。
发布于 2018-11-27 16:22:26
我使用了以下代码,因为"echo y| executable.exe“对我不起作用
// Write a "Y" to the process's input
proc.StandardInput.WriteLine("Y");
// Now that we've sent the confirmation "Y" wait for the process to exit
proc.WaitForExit();
https://stackoverflow.com/questions/2457406
复制相似问题