[IronPython] 'DispPropertyGet' error returned from read-write COM interop property

Dino Viehland dinov at microsoft.com
Sat Dec 6 00:12:12 CET 2008


Does:

mytestRun.Field.Item['RN_USER_01'] = 'abc'

work?

-----Original Message-----
From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Rodney Howeedy
Sent: Friday, December 05, 2008 3:11 PM
To: users at lists.ironpython.com
Subject: [IronPython] 'DispPropertyGet' error returned from read-write COM interop property

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
_______________________________________________
Users mailing list
Users at lists.ironpython.com
http://lists.ironpython.com/listinfo.cgi/users-ironpython.com



More information about the Ironpython-users mailing list