[python-win32] passing 'small' integers as 64 bit integers to COM functions

Shaer, Neta neta.shaer at intel.com
Tue Feb 17 08:17:37 CET 2009


Hello,
I'm using python 2.5 on windows (32 bit).
I'm using some COM object from python.
One of the functions in this COM objects expects VARIANT and operate according to the type of this VARIANT.
The thing is that it does one thing if the VARIANT type is VT_UI4 (32 bit integer) and a different thing for VARIANT of type VT_UI8 (64 bit integer).
The python code that calls this function 'knows' what should be the type of the VARIANT. and in certain cases, the type of the VARIANT should be VT_UI8 (64 bit), though the actual value of the variable is small (i.e. can be contained in 32 bit). But in these cases python will automatically set the type of this variant to VT_UI4 and this will cause the COM function to do the wrong thing (and eventually fail).
Is there any way to 'force' python to pass this VARIANT as VT_UI8 though its value is very small?

Thanks a lot,
Neta.


---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-win32/attachments/20090217/b93301df/attachment.htm>


More information about the python-win32 mailing list