Problems running a compiled script on Windows.

Wayne piercew at hushmail.com
Mon Aug 13 20:32:06 EDT 2001


piercew at hushmail.com (Wayne) wrote in message news:<9d848d5d.0108130707.1b3b8d10 at posting.google.com>...
> Peter Hansen <peter at engcorp.com> wrote in message news:<3B771FBA.B73C3F07 at engcorp.com>...
> > Wayne wrote:
> > > 
> > > I just finished a program/script and compiled it (can't have an
> > > interpreter on the dest. machine).  When I run the .py from the
> > > command line it works fine, however, when I run the .exe from the
> > > command line it doesn't work.  It also doesn't work when I run it from
> > > Explorer.
> > 
> > Always describe *how* something doesn't work.  What are the
> > symptoms?  Does the computer crash?  Does nothing appear to 
> > happen?  Does everything work *except* some minor part of 
> > the logic?  It could be any of these or a zillion other things.
> > (Describing what "works fine" means in the case of your
> > program might be of some help, too.)
> 
> Sorry, I didn't realize how vague that post was when writing it. :-/ 
> Thank you for your patience.
> 
> > Also, there is no standard Python way to create .exe files 
> > on Windows.  Which method did you use?
> 
> I figured out what the problem here was. When Standalone.py created
> the .exe it excluded the 'posixpath' module automatically. My script
> needed that, which is why it worked when running interactively but not
> when compiled.
> 
> > You imply that even the .py doesn't work from Explorer.  Maybe
> > the issue has nothing to do with the .exe, and everything to
> > do with a problem related to the reason it won't run in 
> > Explorer.  Are you perhaps looking at two different problems?
> > (If you run a .py from Explorer, it just opens a console 
> > anyway.  Were you running it as a .pyw, or invoking pythonw
> > directly, or was this whole assumption wrong?)
> 
> I think the other problem with the script running from the command
> line and not explorer was relating to the "__name__='__main__':" code.
>  When I removed that it works fine; I just call the class at the end
> of the script.
> 
> > > I'm using Active Python 2.1.1 with Qt on Win2K.  I've tried to find
> > > all the instances of stdout and stderr that might require console.
> > 
> > Neither stdout nor stderr *require* the console.  That is, the program 
> > will run fine without a console, other than that any output sent to
> > those files will not appear anywhere, which could obviously
> > prevent some programs from appearing to work.  Is your program 
> > failing in some other way, and you are assuming it is because
> > you have prints which can't "go" anywhere?  I'm not sure
> > there is enough information in your post to point out an obvious
> > place to look for a fix... (of course, that has rarely stopped
> > some people in this group from providing useful and correct 
> > answers, but it might help a little :-)
> 
> Ok, thanks.  I've been trying to figure out how to 'hide' the output
> from the BaseHTTPServer...unfortunately there is no /dev/null on NT.
> 
> One item that is still confusing me is using Standalone.py with Qt.  I
> designed the form in BlackAdder and compiled to an exe.  When the
> program is run from a DOS prompt it returns to another prompt, the
> same for explorer.
> 
> When I run the program with either python or pythonw against the
> uncompiled script it works fine and shows the dialog.  The reason this
> is a little confusing is that I've written other BA programs and
> compiled them with Standalone.py without making any modifications.
> 
> When I run the program from the "dist" directory I get the following
> error:
> 
> Traceback (most recent call last):
>   File "<string>", line 1, in ?
>   File "E:\installer_4a2\support\imputil.py", line 98, in _import_hook
>     top_module = self._import_top_module(parts[0])
>   File "E:\installer_4a2\support\imputil.py", line 184, in
> _import_top_module
>     module = item.import_top(name)
>   File "E:\installer_4a2\support\imputil.py", line 211, in import_top
>     return self._import_one(None, name, name)
>   File "E:\installer_4a2\support\imputil.py", line 266, in _import_one
>     module = self._process_result(result, fqname)
>   File "E:\installer_4a2\support\imputil.py", line 295, in
> _process_result
>     exec code in module.__dict__
>   File "mgt.py", line 9, in ?
>   File "E:\installer_4a2\support\imputil.py", line 101, in
> _import_hook
>     raise ImportError, 'No module named ' + fqname
> ImportError: No module named qt
> 
> If I try to for the inclusion of qt by adding an "includes=qt" line to
> the .cfg file for Builder I get an error "qt not found".  If I run the
> interactive interpreter and "import qt" it will find the module
> though.
> 
> :-/  I'm sure it's a typo on my part though....thanks again for your
> help.

:-( I figured it out; recently I installed ActiveState's Python, over
my existing 2.1.1 (their installer for win32all said I didn't have
that version installed...so it appeared to be a good idea at the
time).  What I didn't do was re-install the Qt files that came with
BA; when I removed the ActiveState version of Python everything works
again.

Wayne



More information about the Python-list mailing list