Freezing and Window Service Python 3.9

Hi guys

I wonder if anyone here has any useful tips on an issue I am having upgrading to Python 3.9.

I have a tornado webserver packaged as a windows service and frozen with py2exe. This was in Python 3.4.3.

Several times I have tried to move to the latest version of Python but no matter which package I try to freeze with now, nothing seems to be able to freeze a windows service.

Py2exe became legacy but was brought back to life, the closest comment I can find that suits my needs says that building windows service “may” work.

If anyone is currently doing something like this in Python 39 could you let me know the name of your freezer please?

Many thanks


I’m using cx_Freeze and WinSW with Python 3.8.

The cx_Freeze programs are just plain console programs, which are turned into services by the WinSW wrapper. I’ve found this to be much easier to work with than trying to create native Win32 service .exe’s with a freezer.

The one drawback is that you don’t get signals to suspend/stop/restart in a straightforward way. To stop a service WinSW launches a separate program which you have to make (possibly the same console program with different parameters), which then has to find its own way to notify the actual service process.

There’s nothing special about cx_Freeze in this. You could use any freezer to create a console program and then wrap it with WinSW.

Thanks for the reply, appreciate it, I will give that a shot.