2016-05-13 96 views
1

我有一个脚本,它具有一个GUI,它接收用户数据并将其存储到文本文件中。它运行另一个脚本(一个.exe),它等待用户输入,然后执行一些工作。我想要的是后者脚本在读取用户输入后隐藏其控制台窗口,但要继续在后台工作。阅读输入后隐藏控制台窗口

我试图用subprocess.call('lastscript.exe', shell=True)subprocess.Popen('lastscript.exe', shell=True)运行该脚本。这不起作用。我必须先从用户开始输入,然后隐藏控制台并让程序在后台工作。

+0

您曾经考虑过使用TK窗口输入? – R21

+0

@ R21我正在使用PyQt5进行GUI – GLHF

+0

您是否控制了lastscript.exe的源代码?它可以轻松隐藏自己的控制台窗口。 – eryksun

回答

2

这里的代码片段隐藏在Python脚本Windows控制台:

import ctypes 

kernel32 = ctypes.WinDLL('kernel32') 
user32 = ctypes.WinDLL('user32') 

SW_HIDE = 0 

hWnd = kernel32.GetConsoleWindow() 
if hWnd: 
    user32.ShowWindow(hWnd, SW_HIDE) 
+0

它适用于我的示例脚本,我会在主脚本上尝试它,但我认为它会起作用。感谢你的回答。 – GLHF