MATLAB: Am I unable to access properties of the COM object using dot-notation with MATLAB 7.0 (R14)

activexMATLABr14sp1r14sp2set

When I try to access the properties of a COM object in MATLAB 7.0 (R14) with the following code:
h=actxserver('LeCroy.WaveMasterApplication');
channel1 = h.Acquisition.C1.Out.Results;
I receive the following error
??? Error: method or property not found
When I try to access it with the following code, however
h=actxserver('LeCroy.WaveMasterApplication');
channel1 = get(get(get(h.Object,'Item','C1'),'Out'),'Results');
I am able to obtain the value of the property. Both methods worked in MATLAB 6.5 (R13).

Best Answer

The cause of this error is that "InstrumentID" and the other properties in question are not found in the type library of the COM object. In MATLAB 6.5 (R13), calls into the COM object using dot notation would automatically call GET, which would execute a direct INVOKE call to the object. In MATLAB 7.0 (R14), however, if a field is not known to the type library, a call into the object using dot notation will fail.
You should only use dot notation for properties that are visible from
get(h)
or
fields(h)
otherwise use the
get(h, 'propertyName')
syntax.