问题
I have a script that has a GUI, which takes user data and stores it into a text file. It runs another script (an .exe), which waits for user input and then does some work. What I want is for the latter script to hide its console window after reading input from the user, but to continue working in the background.
I tried to run that script with subprocess.call('lastscript.exe', shell=True)
or subprocess.Popen('lastscript.exe', shell=True)
. This doesn't work. I have to take input from the user first, and then hide the console and let the program work in the background.
回答1:
Here's a code snippet to hide the Windows console in a Python script:
import ctypes
kernel32 = ctypes.WinDLL('kernel32')
user32 = ctypes.WinDLL('user32')
SW_HIDE = 0
hWnd = kernel32.GetConsoleWindow()
if hWnd:
user32.ShowWindow(hWnd, SW_HIDE)
来源:https://stackoverflow.com/questions/37206306/hiding-the-console-window-after-reading-input