.bat文件与java或C#.net GUI应用程序的交互

时间:2011-09-26 06:49:16

标签: c# netbeans batch-file command-prompt

如何使用java或C#.net GUI应用程序交互.bat文件?这是我的.bat代码的一部分。

:Valid

echo Enter student id:

set/p "pass=>"

if NOT %pass%== UserStudentId goto FAIL

当我运行.bat文件时,它将在命令提示符中询问Enter student id:,然后验证学生ID并执行一些过程。 我想将此输入从java或C#.net IDE传递到.bat文件并继续该过程。在这里用户永远不会处理命令提示符。 如果.bat有任何输出,它也会在java或.net IDE中显示。

我想知道是否有可能,因为我是新手。 TX。

1 个答案:

答案 0 :(得分:2)

当您从Java或C#启动进程时,您可以将该进程的控制台输入和输出作为流。然后,您可以简单地写入流程的输入流。

可能,批处理文件实际上不会那样,因为cmd可能会查找set /p的实际交互式输入(例如,它失败了文件重定向,如果我没记错的话)。如果您控制批处理文件本身,更好的方法如下:

if defined pass goto SkipInput
set /p pass=Enter student ID:
:SkipInput

将使用环境变量(如果存在),仅询问用户是否尚未设置。这更加自动化,因为您可以在调用进程中设置环境变量,并为您生成的每个进程继承它。也没有模拟输入的麻烦。