我有一个小型的C ++控制台应用程序,它会显示一个菜单,然后执行所选的操作。
另外,我编写了一个VBScript,它运行在StdOut上(由Exec实现)并输入StdIn值。
但是,当我尝试执行此脚本时,控制台应用程序卡在scanf调用中,并且脚本不会从输出中收到任何内容。 _flushall()无济于事。
有没有人有任何想法?
感谢。
答案 0 :(得分:0)
VBScript / Windows Scripting Host非常困难,因为没有非阻塞IO。换句话说,没有办法说“立即阅读任何可用的东西,然后立即返回”。
可以从脚本执行此操作,前提是您确切知道程序将在每种情况下创建的输出。
在大多数情况下,如果可能的话,最好以非交互式“批处理”模式设置程序,程序接受命令但不需要响应提示。