You work as the Microsoft.NET developer at Domain.com. The Domain.com network consists of a single Active Directory domain named Domain.com. All servers in the domain run Windows Server 2003. The development and deployment of client applications forms part of your responsibilities at Domain.com. You have developed a serviced component that will be used by both managed and unmanaged applications within Domain.com. A remote computer will be hosting this serviced component. The serviced component will be accessible through DCOM. The computers that host the client applications have the .NET Framework 2.0 installed. You have received instruction to allow both managed and unmanaged client applications to reference the serviced component.
What should you do?
A.
Copy the serviced component to each client computer that must access the serviced component using the XCOPY tool.
A reference to each client computer should be added to the serviced component’s assembly.
B.
Run the TypeLibrary Importer (Tlbimp.exe) tool against the serviced component assembly.
Copy the output file to the runtime directory of each client application.
A reference should be added to the output of each client application.
C.
A proxy for the COM+ application that hosts the component should be exported into a Microsoft Windows Installer (MSI) package using the Component Services tool.
Execute the package on the computers that contain the client applications.
A reference to the generated assembly should be added to each client application.
D.
The RunInstaller attribute should be added to each class in the serviced component assembly.
Run the Installer tool (InstallUtil.exe) on each client computer that must assess the serviced component.
A reference to the serviced component’s assembly should be added to each client application.
Explanation:
A proxy for the COM+ application that hosts the component should be exported into an MSI package. Then you should execute the proxy component into the COM+ catalog on the client computers. This also installs the GAC. Then a reference to this assembly should be added to each client application. This can be done since all the computers have the .NET Framework installed.
Incorrect answers:
A: XCOPY should not be used to copy the serviced component to each client computer as it will not register the component in the COM+ catalog.
B: The Tlbimp.exe generates a managed assembly from a type library, but then unmanaged client applications cannot directly access components in managed assemblies.
D: The Services component’s assembly is a managed assembly, therefore you should not add a reference to the serviced component’s assembly to each client application fit then you will deny unmanaged client applications from directly referencing it. Also you should not ass the RunInstaller attribute to each class in the serviced component’s assembly. This attribute will indicate that the Installer tool must execute for the associated class when the assembly is installed, however, then you should apply the RunInstaller attribute to Installer-derived classes.