>I'm afraid that with the exact same process (although the 'print' says >'print "QI", iid' - using python 2.6 on vista) I see exactly: > >| Object with win32trace dispatcher created (object=None) >| Object with win32trace dispatcher created (object=<pippo_server.CPippo >instance at 0x02AD8210>) >| QI {F1A3CC2E-4B2A-4A81-992D-67862076949B} > >So I see no such QI. Also, I've lost the context - what problem is caused >by this QI? We should return E_NOINTERFACE.
Thanks Mark for the test. I'm running the test on Windows XP and Windows 2k, both with python 2.5.2. The problem is that the QI with value to 0 is raised somewhere in the pythoncom code (or in the OS COM stuff), but I cannot find where. This cause the call to the function to fail with an exception. I guess that if you return E_NOINTERFACE the effect changes a little but not the concept. Why somebody is asking for an interface with iid to null? This happens with functions that want to return a **param as in the pippo server. On the weekend I could try on Vista but I suspect that there's something else since on your side it's working. thanks, Enrico _______________________________________________ python-win32 mailing list python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32