Robert wrote:
Mark Hammond wrote:

It will be something to do with the manifest and the mfc
libraries. I think that even though the mfc dlls are installed
with pywin32, it might not work as hoped :) Can you find a
redistributable version of the MFC dlls you can try? I can't
explain why the 32 vs 64bit versions behave differently other than
what libraries are already installed.

Sorry, not much help...


same problem here.

Well, the problem seems not to be 64bit specific. But is with
build 216 and 215 on 32bit as well; and with all Python versions.
Something changed critically with 215 build.

The problem is not when starting through Pythinwin.exe (IDE), but
only when starting with python(w).exe + win32ui
(Even when the Pythonwin IDE is raise sucessfully through a script
on python(w).exe, the problem is there)

Is there a special manifest in Pythonwin.exe ?



notized: I remove just mfc90.dll from the Pythonwin folder, and then do python.exe:

C:\Python26\Lib\site-packages\pythonwin>\python26\python
Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import win32ui
>>> win32ui.GetApp()
object 'PyCWinApp' - assoc is 00BBC728, vi=<None>, notify=0,ch/u=0/0
>>> import dde
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden. (module not found)
>>>


=> dde relies on the mfc90.dll in the same folder, but win32ui(.GetApp()) not !?


And: with that removed mfc90.dll I can yet start the Pythonwin.exe of that very same folder AND successfully import dde !: PythonWin 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32. Portions Copyright 1994-2008 Mark Hammond - see 'Help/About PythonWin' for further copyright information.
>>> import dde
>>> os.getcwd()
'C:\\Python26\\Lib\\site-packages\\pythonwin'
>>> dde
<module 'dde' from 'dde.pyd'>
>>>


=> This time starting through Pythonwin.exe the same dde.pyd doesn't require the mfc90.dll in that folder! (I can even remove the other 3 mfc dlls too)

=> There is a strange mixup of mfc DLL dependencies, varying with the initial .exe

There are also 2 different dates of the 4 MFC dlls here (in a very strange cross over order):

26.02.2011  18:43            48.640 dde.pyd
04.11.2011  11:57         1.156.600 mfc90.dll
07.11.2007  02:19         1.162.744 mfc90u.dll
06.11.2007  23:51            59.904 mfcm90.dll
04.11.2011  11:57            59.904 mfcm90u.dll
04.11.2011  11:57               548 Microsoft.VC90.MFC.manifest
19.08.2010  14:56           354.304 pythoncom26.dll
26.02.2011  18:43            19.968 Pythonwin.exe
19.08.2010  14:56           110.592 pywintypes26.dll
26.02.2011  18:42           778.240 win32ui.pyd
26.02.2011  18:42            37.888 win32uiole.pyd
              11 Datei(en)      3.789.332 Bytes
               2 Verzeichnis(se), 43.639.382.016 Bytes frei


I tried to copy various mfc90 DLL's (4 of same date; e.g. 18.4.2011) from WinSxS and also from pythonwin-212 to the 216 pythonwin folder , but that still didn't solve the dde import problem in 216 when starting through python(w).exe

any ideas?


Robert

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

Reply via email to