Search code examples
pythonwindowscommand-promptpy2exe

Python - how can i hide the windows command prompt screen when the script is running?


How can i remove this black command prompt screen from the desktop when my python script is running?

I made the service.py script into exe using python 2 exe. All worked fine but when the .exe is running i have a fixed command prompt which i do not want to show.

enter image description here

service.py:

#!/usr/bin/env python
import os
import ctypes
from subprocess import Popen, PIPE

def Mbox(title, text, style):
  ctypes.windll.user32.MessageBoxA(0, text, title, style)

python_check = os.path.exists("C:/Python27/python.exe")
g_check = os.path.exists("C:/dev_appserver.py")

if python_check & g_check:
  p0 = Popen(['C:/Python27/python.exe', 'C:/dev_appserver.py', '--host', '0.0.0.0', '--port', '8080', 'C:/application'], stdout=PIPE, stdin=PIPE, stderr=PIPE, shell=True)
  out, err = p0.communicate("n\n")

else:
  Mbox('Notice', 'Launching service failed please make sure C:\Python27\python.exe and C:/dev_appserver.py', 0)

setup.py:

from distutils.core import setup
import py2exe
setup(console=['service.py'])

Solution

  • In the setup.py file you must write windows instead console.

    Like this:

    windows=["service.py"],
        options={"py2exe":
           {"optimize": 2,
              "bundle_files": 0,
              "ascii": 0}}