What Does Hosting Mean?
Hosting refers to the act of loading and controlling the execution of one or more software components. In this chapter, we're going to assume the unit of software component is the assembly (after all, that's the unit to which security trust levels are assigned). We're also going to restrict ourselves to looking at hosting one or more assemblies within a single process (as we'll see, this is made secure and feasible by the nature of the .NET Framework).
Think of a host as a container for other programs, as depicted in Figure 10.1.
Figure 10.1. Hosting assemblies within a process.
Furthermore, the host typically allows components ...