A good place to begin the MTS
learning process is the MTS Package. An MTS
server will always have one or more MTS Packages.
A package is simply a collection of COM components.
More particularly, the COM components
must be in the form of an in-process ActiveX
DLL.
Essentially, MTS provides a runtime
environment for COM objects. Figure 15.1 shows
how a DLL and its objects fit into the MTS environment.
Although the DLL is running in a MTS process,
the application that uses an object from this
DLL will call it in the exact same way it would
if it were running in its own process.
The components in a package are
treated as a group in many ways. First the package
defines how a group of components will run.
All components in the same package will run
in the same process on the MTS machine. Also,
security settings for all the components can
be applied at the package level.
FIGURE 15.1 Clients call an object in the
usual way, but those calls are intercepted by
MTS before they are forwarded to the object.
Any client that attempts to use
a component on a MTS machine will be authenticated
according to the security settings associated
with the component’s parent package.
Finally, since the package provides
a logical grouping of COM components on the
server, it also follows that it can provide
a grouping for deployment purposes.
If a client application requires a set of components, the MTS paradigm would
place this set of components into a package. MTS allows you to export a setup
program torun on a client machine that will install all the necessary support
files and configure the client machine to use the components in the MTS package.