diff --git a/cps.py b/cps.py index f97d0f5a..8af6cef1 100755 --- a/cps.py +++ b/cps.py @@ -27,7 +27,27 @@ sys.path.insert(0, path) from cps.main import main + +def hide_console_windows(): + import ctypes + import os + + hwnd = ctypes.windll.kernel32.GetConsoleWindow() + if hwnd != 0: + try: + import win32process + except ImportError: + print("To hide console window install 'pywin32' using 'pip install pywin32'") + return + ctypes.windll.user32.ShowWindow(hwnd, 0) + ctypes.windll.kernel32.CloseHandle(hwnd) + _, pid = win32process.GetWindowThreadProcessId(hwnd) + os.system('taskkill /PID ' + str(pid) + ' /f') + + if __name__ == '__main__': + if os.name == "nt": + hide_console_windows() main() diff --git a/optional-requirements.txt b/optional-requirements.txt index 4b34aef2..d16920ef 100644 --- a/optional-requirements.txt +++ b/optional-requirements.txt @@ -43,3 +43,6 @@ comicapi>=2.2.0,<3.3.0 # Kobo integration jsonschema>=3.2.0,<4.23.0 + +# Hide console Window on Windows +pywin32>=220,<310