componentinfo

Query system registry about COM component created with the MATLAB® Builder™ NE product

Syntax

info = componentinfo
info = componentinfo(component_name)
info = componentinfo(component_name, major_revision_number)
info = componentinfo(component_name, major_revision_number, minor_revision_number)

Arguments

component_name

A MATLAB® string providing the name of a COM component created by the MATLAB Builder NE product. Names are case sensitive. If this argument is not supplied, the function returns information on all installed components.

major_revision_number

Component major revision number. If this argument is not supplied, the function returns information on all major revisions.

minor_revision_number

Component minor revision number. Default value is 0.

Description

info = componentinfo returns information for all components installed on the system.

info = componentinfo(component_name) returns information for all revisions of component_name.

info = componentinfo(component_name, major_revision_number) returns information for the most recent minor revision corresponding to major_revision_number of component_name.

info = componentinfo(component_name, major_revision_number, minor_revision_number) returns information for the specific major and minor version of component_name.

The return value is an array of structures representing all the registry and type information needed to load and use the component.

When you supply a component name, major_revision_number and minor_revision_number are interpreted as shown below.

ValueInformation Returned
> 0

Information on a specific major and minor revision

0

Information on the most recent revision

When omitted, minor_revision_number is assumed to be equal to 0.

< 0

Information on all versions

The information about a component has the fields shown in the following tables.

Registry Information Returned by componentinfo

FieldDescription
NameComponent name
TypeLibComponent type library
LIBIDComponent type library GUID
MajorRevMajor version number
MinorRevMinor version number
FileNameType library file name and path. Since all COM components created with the builder have the type library bound into the DLL, this file name is the same as the DLL name and path.
Interfaces

An array of structures defining all interface definitions in the type library. Each structure contains:

Name - Interface name

IID - Interface GUID

CoClasses

Array of structures defining all COM classes in the component. Each structure contains:

Name - Class name

CLSID - GUID of the class

ProgID - Version dependent program ID

VerIndProgID - Version independent program ID

InprocServer32 - Full name and path to DLL

Methods - A structure containing function prototypes of all class methods defined for this interface. This structure contains four fields:

IDL - An array of Interface Description Language function prototypes

M - An array of MATLAB function prototypes

C - An array of C-language function prototypes

VB - An array of VBA function prototypes

Properties - A cell array containing the names of all class properties.

Events - A structure containing function prototypes of all events defined for this class. This structure contains four fields:

IDL - An array of IDL (Interface Description Language) function prototypes.

M - An array of MATLAB function prototypes.

C - An array of C-Language function prototypes.

VB - An array of VBA function prototypes

Usage

Use the componentinfo function to get information (such as class name, program id) to pass on to users of a component that you create.

The componentinfo function also provides a record of changes made to the registry on your development machine. This information might be useful for debugging if you run into problems.

Examples

Function CallDescription of Return Information
Info = componentinfo Information for all installed components.
Info = componentinfo('mycomponent') Information for all revisions of mycomponent.
Info = componentinfo('mycomponent',1,0)

Information for revision 1.0 of mycomponent.

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS