A dispid has been given to a property which is not in an automated section.
program Produce; type Base = class v : integer; procedure setV(x : integer); function getV : integer; property Value : integer read getV write setV dispid 151; end; procedure Base.setV(x : integer); begin v := x; end; function Base.getV : integer; begin getV := v; end; begin end.
This program attempts to set the dispid for an OLE automation object, but the property has not been declared in an automated section.
program Solve; type Base = class v : integer; procedure setV(x : integer); function getV : integer; automated property Value : integer read getV write setV dispid 151; end; procedure Base.setV(x : integer); begin v := x; end; function Base.getV : integer; begin getV := v; end; begin end.
To solve the error, you can either remove the dispid clause from the property declaration, or move the property declaration into an automated section.
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|