FT wrote:
NOTE:
    If you do make an executable you may also after compiling the Voice2.py
get an error if you do not
have MSVcp71.dll, mfc71.dll, and gdiplus.dll copied into your setup.py file.
In other words a copy command to
copy the dll's from your system32 folder. For if you do not, some computers
it is run on will fail if they do not have those dll's installed. It would
appear that they are not automatically copied.

    I am assuming that most of you probably have all the C dll's and such
and may not need the note, but those who do not will need the dll's.

#FORCE THE NEEDED DLL'S OR COMMENT THEM OUT!
shutil.copy("c:/windows/system32/msvcp71.dll", os.path.join(os.getcwd(),
"dist", "msvcp71.dll"))
shutil.copy("c:/windows/system32/msvcp71.dll", os.path.join(os.getcwd(),
"dist", "mfc71.dll"))
shutil.copy("c:/windows/system32/msvcp71.dll", os.path.join(os.getcwd(),
"dist", "gdiplus.dll"))

These DLLs should have been loaded on every Windows XP by Windows Update, so anyone with a recent system should have them.

However, that short snippet has a couple of problems. First, you assume that everyone's Windows directory is called "c:/windows". Second, you are copying all three files to the same destination name. Instead, do something like this:

   dest = os.path.join( os.environ['WINDIR'], 'system32' )
   for dll in ("msvcp71.dll", "mfc71.dll", "gdiplus.dll"):
       if not os.path.isfile( os.path.join( dest, dll ) ):
shutil.copy( os.path.join( dest, dll ), os.path.join( 'dist', dll ) )

You may think this is nitpicking, and you're probably right, but once you start trying to release code into the wild, you have to start thinking about the issues you encounter in the strange and magical world of the average user.

--
Tim Roberts, [EMAIL PROTECTED]
Providenza & Boekelheide, Inc.

_______________________________________________
python-win32 mailing list
python-win32@python.org
http://mail.python.org/mailman/listinfo/python-win32

Reply via email to