run exe and create exe

D

daved170

Hi everybody,
I have 2 questions:
1) I created my python application. It has QT Gui. How can I make exe
of it? I don't want everytime I run the file it'll open the command
line window which does nothing.

2) My Application suppose to be a client server app. Anyhow, for now
It's running only on local host. I added a button that run the server
file.
my server file located at "c:\temp\server.py". It takes no arguments.

I tried the following codes at the push button function:

os.system(""c:\temp\server.py"") - It stuck my GUI. I guess that this
function doesn't open a new proccess.

I also tried :
os.spawnv(os.P_NOWAIT,"c:\temp\server.py");

It raised the following error:
OSError: [Errno 8] Exec format error.

Any Idea what to do?

Thanks
DaveD
 
R

r

Hi everybody,
I have 2 questions:
1) I created my python application. It has QT Gui. How can I make exe
of it? I don't want everytime I run the file it'll open the command
line window which does nothing.

If you want to run your script without the command line popping up...

1. rename the script to myscript.pyw
*OR*
2. run the script by C:\\PYVER\\pythonw.exe myscript.py


if you want an exe check out py2exe... Google knows where to find it.
 
M

MRAB

daved170 said:
Hi everybody,
I have 2 questions:
1) I created my python application. It has QT Gui. How can I make exe
of it? I don't want everytime I run the file it'll open the command
line window which does nothing.

2) My Application suppose to be a client server app. Anyhow, for now
It's running only on local host. I added a button that run the server
file.
my server file located at "c:\temp\server.py". It takes no arguments.

I tried the following codes at the push button function:

os.system(""c:\temp\server.py"") - It stuck my GUI. I guess that this
function doesn't open a new proccess.
"" is an empty string, so ""c:\temp\server.py"" is just the empty string
"" followed by c:\temp\server.py and then another empty string "".
I also tried :
os.spawnv(os.P_NOWAIT,"c:\temp\server.py");

It raised the following error:
OSError: [Errno 8] Exec format error.

Any Idea what to do?
A backslash starts an escape sequence, which you don't want because it's
a path. You should either double the backslashes:

os.spawnv(os.P_NOWAIT, "c:\\temp\\server.py")

or use a raw string:

os.spawnv(os.P_NOWAIT, r"c:\temp\server.py")
 
B

Benjamin Kaplan

Hi everybody,
I have 2 questions:
1) I created my python application. It has QT Gui. How can I make exe
of it? I don't want everytime I run the file it'll open the command
line window which does nothing.

Two things about this.. One, if you want to "freeze" your app (turn it
into a finalized exe binary that doesn't require you to have Python or
QT installed), use py2exe. The problem with this is that your final
binary will include the Python interpreter, QT, and any other modules
you use so it will be pretty big.

The other thing you can do is run the script with pythonw.exe instead
of python.exe. It will still be a Python script, but it will run
without opening a command prompt.
2) My Application suppose to be a client server app. Anyhow, for now
It's running only on local host. I added a button that run the server
file.
my server file located at "c:\temp\server.py". It takes no arguments.

I tried the following codes at the push button function:

os.system(""c:\temp\server.py"") - It stuck my GUI. I guess that this
function doesn't open a new proccess.

It does open a new process. But the new process is a child process of
your original script and the first script will wait for it to finish
so that it can get the return code.
I also tried :
os.spawnv(os.P_NOWAIT,"c:\temp\server.py");

It raised the following error:
OSError: [Errno 8] Exec format error.

Any Idea what to do?
In a normal string, \t = tab, so you're actually running the file
"C: emp\server.py" which doesn't exist. Try using a raw string, double
your backslashes, or use forward slashes instead.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,013
Latest member
KatriceSwa

Latest Threads

Top