Previous | Table of Contents | Next |
17.7.8.1 Naming the COM View Interface
The default name for the COM View’s Interface should be:
I<module name>_<interface name>For example, if the module name is “MyModule? and the interface name is “MyInterface,? then the default name should be:IMyModule_MyInterface
If the module containing the interface is itself nested within other modules, the default name should be:
I<module name>_<module name>_...<module name>_<interface name>
where the module names read from outermost on the left to innermost on the right. Extending our example, if module “MyModule?
were nested within module “OuterModule,? then the default name shall be:
IOuterModule_MyModule_MyInterface
17.7.8.2 Tag for the Automation Interface Id
No standard tag is required for Automation and Dual Interface IDs because client programs written in Automation controller
environments such as Visual Basic are not expected to explicitly use the UUID value.
17.7.8.3 Naming the Automation View Dispatch Interface
The default name of the Automation View’s Interface should be:
D<module name>_<interface name>
For example, if the module name is “MyModule? and the interface name is “MyInterface,? then the default name should be:
DMyModule_MyInterface
If the module containing the interface is itself nested within other modules, the default name should be:
D<module name>_<module name>_...<module name>_<interface name>
where the module names read from outermost on the left to innermost on the right. Extending our example, if module “MyModule?
were nested within module “OuterModule,? then the default name shall be:
DOuterModule_MyModule_MyInterface
17.7.8.4 Naming the Automation View Dual Interface
The default name of the Automation Dual View’s Interface should be:
DI<module name>_<interface name>
For example, if the module name is “MyModule? and the interface name is “MyInterface,? then the default name should be:
DIMyModule_MyInterface
If the module containing the interface is itself nested within other modules, the default name should be:
DI<module name>_<module name>_...<module name>_<interface name>
where the module names read from outermost on the left to innermost on the right. Extending our example, if module “MyModule?
were nested within module “OuterModule,? then the default name will be:
DIOuterModule_MyModule_MyInterface
17.7.8.5 Naming the Program Id for the COM Class
If a separate COM class is registered for each View Interface, then the default Program Id for that class will be:
<module name> “.? <module name> “.? ...<module name> “.? <interface name>
where the module names read from outermost on the left to innermost on the right. In our example, the default Program Id will
be:
“OuterModule.MyModule.MyInterface?
17.7.8.6 Naming the Class Id for the COM Class
If a separate COM co-class is registered for each Automation View Interface, then the default tag for the COM Class Id (CLSID)
for that class should be:
CLSID_<module name>_<module name>_...<module name>_<interface name>
where the module names read from outermost on the left to innermost on the right. In our example, the default CLSID tag should
be:
CLSID_OuterModule_MyModule_MyInterface