There are several possible explanations as to why a COM object would return an empty set of properties and/or methods. Three of the reasons are:
1. The COM object does not have any properties or methods available to it.
2. MATLAB cannot find the COM object's type library.
Frequently, the type library is part of the COM object. If the type library is instead contained in a separate file, MATLAB is not able to find the type library to query it for the supported methods and properties.
This is a current limitation of MATLAB that we are looking to address for a future release of MATLAB. Currently, if you know the names of the methods and properties, you can access them explicitly using GET, SET, and INVOKE. For example
myValue = get(myObject,'myProperty')
set(myObject,myProperty,'myValue')
invoke(myObject,'myMethod')
Using dot notation (e.g., myObject.myMethod) will not work.
For more information on GET, SET, and INVOKE, issue the following commands at the MATLAB command prompt:
3. The COM object has not been defined properly for invocation via late-binding. This may be the cause if you or a colleague has created a custom COM object (especially in C++). One thing to keep in mind is that you need to fully implement the IDispatch interface. MATLAB uses late-binding to call COM objects, so you should test your application in another language, such as Visual Basic using late-binding. As of MATLAB 7.4 (R2007a), the IUnknown interface is also supported. For more information see:
Best Answer