[IronPython] 'DispPropertyGet' error returned from read-write COM interop property
Rodney Howeedy
Rodney.Howeedy at Sun.COM
Sat Dec 6 00:11:03 CET 2008
Hi everyone,
I encounter an error with 2.0 RC2 that didn't occur in the same
IronPython code on 2.0 Beta 3.
I use a factory object from a COM interop assembly that has a read-write
property named "Field". I get a TypeError when I assign a value to this
property (read-write):
>>> mytestRun.Field['RN_USER_01'] = 'abc'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'DispPropertyGet' object is unsubscriptable
>>> print mytestRun.Field['RN_USER_01']
None
I imported the same COM interop assembly that worked with 2.0 Beta3.
The interop was converted with tlbimp.exe from a COM API .dll. Here's
the 2.0 Beta3 output:
>>> mytestRun.Field['RN_USER_01'] = 'abc'
>>> print mytestRun.Field['RN_USER_01']
abc
My best guess is that IronPython 2.0 RC2 interprets the property as
read-only even though the COM interop assembly defines the property
read-write. The error occurs in IronPython 2.0 RC2 with every COM
interop object with the read-write "Field" property.
I can read the default assigned value but cannot assign anything. Any
ideas? I'm fresh out of them after trying many permutations of the syntax.
Thank you,
Rodney Howeedy
Staff Engineer, Sun Microsystems
More information about the Ironpython-users
mailing list