Dev-Picayune

picayune: of little value or importance

Now on wxPython 2.8.x Upgrade from 2.7.x and 2.6.x

At work, I have a couple of apps we’re about to release that use py2exe and wxPython. And like many folks, I’ve ended up seeing the zipextimporter error trying to run the final .exe on a Windows 2000 box. Windows XP was fine. I was getting this error with a wxPython 2.7.x configuration. Since 2.8.1.x is now out, I figured I’d upgrade while I was at it. Now, my previously mentioned issue with the StaticBoxSizer is fixed so that’s definitely an improvement and I no longer have to use the --dell-exclude gdiplus.dll fix (yea!) , but I was still getting the zipextimporter error on _core_. Any search on google will turn up tons of hits for this error. Each time, folks are implored to include gdiplus.dll and stuff like that. No matter what advice I followed, it didn’t seem to work. But it turns out the missing file was really MSVCP71.DLL (rather than MSVCR71.DLL). By including that .DLL (you can get it from the wx library area referenced in the output of py2exe) with my .exe I’m suddenly good to go on Window 2K boxes. Under XP, everything is fine without it because it is presumably already installed on an XP box. Since I was having trouble finding info on it, I figured I’d blog about it. Essentially, it’s one of those things where you really need to just look at the output of py2exe because the bindings and includes for wxpython are now pretty darn accurate. Overall, a big thumbs up to wxPython 2.8.x so far. Now, I’m anxious to look at other areas to see what all is new/better.

Technorati Tags: , ,

5 Comments so far

  1. Calvin March 19th, 2007 4:30 pm

    I experienced the same problem and found the same solution, but now I\’m wondering why Bittorrent doesn\’t need MSVCP71.DLL even though it was apparently built using py2exe and wxPython as well

  2. ScW March 20th, 2007 10:52 am

    It is surprising that you found Bittorrent without it in its directory… and it still worked under Windows 2K? If you poked around, I would imagine that MSVCP71.DLL is around the system somewhere… system32 or windows or somewhere that it can find it.

  3. Calvin March 21st, 2007 5:04 pm

    I just installed Bittorrent on a new and clean Windows 2000 (SP2) machine. Before installing Bittorrent I searched the complete hard disk for MSVCP71.DLL and MSVCR71.DLL and found neither the one nor the other. After the Bittorrent installation MSVCR71.DLL can be found in the Bittorrent directory but there is still no MSVCP71.DLL, neither in the Bittorrent directory nor elsewhere. I even searched for MSVCP71.DLL while Bittorrent was running … nothing. My next step was installing CurrProcess from http://www.nirsoft.net/utils/c... to view all the module files used by Bittorrent. According to CurrProcess it uses these files (but again, no MSVCP71.DLL):

    _c_urlarg.pyd

    _controls_.pyd

    _core_.pyd

    _ctypes.pyd

    _gdi_.pyd

    _gizmos.pyd

    _grid.pyd

    _iocp.pyd

    _misc_.pyd

    _socket.pyd

    _ssl.pyd

    _stc.pyd

    _windows_.pyd

    _zope_interface_coptimi zations.pyd

    ACTIVEDS.DLL

    ADSLDPC.DLL

    ADVAPI32.dll

    ARC4.pyd

    bittorrent.exe

    cBitfield.pyd

    CLBCATQ.DLL

    COMCTL32.DLL

    comdlg32.dll

    CRYPT32.dll

    dde.pyd

    DHCPCSVC.DLL

    DNSAPI.DLL

    GDI32.DLL

    ICMP.DLL

    IMM32.dll

    INDICDLL.dll

    iphlpapi.dll

    KERNEL32.DLL

    LZ32.DLL

    MFC71.DLL

    MPRAPI.DLL

    msafd.dll

    MSASN1.DLL

    msimg32.dll

    MSVCR71.dll

    MSVCRT.DLL

    MSWSOCK.dll

    NETAPI32.DLL

    NETRAP.DLL

    ntdll.dll

    ntdsapi.dll

    ole32.dll

    OLEAUT32.dll

    Psapi.dll

    PYTHON24.DLL

    pythoncom24.dll

    pywintypes24.dll

    rasadhlp.dll

    RASAPI32.DLL

    RASMAN.DLL

    riched20.dll

    rnr20.dll

    RPCRT4.DLL

    rsaenh.dll

    RTUTILS.DLL

    SAMLIB.DLL

    secur32.dll

    security.dll

    select.pyd

    SETUPAPI.DLL

    shell.pyd

    SHELL32.dll

    SHLWAPI.DLL

    TAPI32.DLL

    USER32.dll

    USERENV.dll

    VERSION.dll

    win32api.pyd

    win32event.pyd

    win32file.pyd

    win32gui.pyd

    win32pipe.pyd

    win32process.pyd

    win32security.pyd

    win32ui.pyd

    WINMM.dll

    winrnr.dll

    WINSPOOL.DRV

    WLDAP32.DLL

    WS2_32.dll

    WS2HELP.DLL

    wshtcpip.dll

    WSOCK32.dll

    wxmsw26uh_gizmos_vc.dll

    wxmsw26uh_stc_vc.dll

    wxmsw26uh_vc.dll

  4. ScW March 21st, 2007 5:13 pm

    I think your answer is obvious, looking at those files. Bittorrent is using wx 2.6 rather than 2.7 or 2.8.

    Hope that solves your mystery.

  5. Calvin March 22nd, 2007 3:43 pm

    OUCH.

    … Thanks.

Leave a reply

For spam filtering purposes, please copy the number 3876 to the field below: