
Understanding Entry Points
An entry point is a type that is instantiated when the host application loads an add-in. The entry point also contains methods that can be called by the host application to initialize the add-in. Typically, the entry point is a proxy for a host type that lives at the top of the object model hierarchy, such as an Application class that represents the host application, or a Document class that represents a document in the application.
For proxies that are generated from managed assemblies, you can specify a class or an interface as an entry point. For proxies that are generated from COM type libraries, you can specify only classes as entry points.
If your object model is implemented in multiple assemblies or type libraries, you do not have to specify an entry point in every proxy descriptor file that you generate. However, at least one of the proxy descriptor files must have an entry point (although you can optionally specify entry points in multiple descriptor files).
An entry point is also the base class for a host item in the add-in developer's project. A host item is a class that provides a starting point for add-in developers to write their code, and is the class that add-in developers use to obtain all other objects that they use to automate the host application. For more information about host items, see Creating Project Templates Using the Project Template Generation Tool (Projectgen.exe).