【发布时间】:2013-06-25 17:46:54
【问题描述】:
我从 python 环境运行 DOS 命令,该命令通过标准输出检索其命令输出。
除了每次运行脚本时都会弹出 windows 控制台外,一切都工作正常,所以我需要一种隐藏 windows 控制台的方法。
从示意图上看,这是预期的过程:
"Console1" runs "hidden Console2" and retrieves its output into "Console1"
我阅读了一些关于“HiddenStart”或“chp”等软件的建议,它们在执行 DOS 命令和批处理脚本时会隐藏控制台。 VBScript中的另一种解决方案也可以使用以下代码实现此结果:
Set oShell = CreateObject ("Wscript.Shell")
Dim strArgs
strArgs = "cmd /c COMMAND GOES HERE"
oShell.Run strArgs, 0, false
但不幸的是,“HiddenStart”、“chp”和 VBScript 脚本都不允许检索已执行命令的命令输出。 "Chp" 输出标准输出,但仅用于退出进程代码。
有人可能会说,可以将结果记录到磁盘上的文件中,然后检索文件的内容,但这不是所需的,导致过程更加复杂。
所以,我想知道是否可以从隐藏的控制台检索命令输出,是吗?
解决方案:
How to avoid console window with .pyw file containing os.system call?
帖子作者的注意事项: 嗨,这是我第一次来这里,这个问题不是重复的,而是一个变体。证明是我之前进行了搜索,在我真正写下问题之前很难找到解决方案。所以,版主需要比这更微妙一些。我认为这是一个链接的、相关的问题或变体,但不是重复的。谢谢。
【问题讨论】:
标签: python command-line vbscript dos stdout