Help and Support

How to Isolate a DLL into a Separate Process By Using Component Services

Article ID:281335
Last Review:November 21, 2006
Revision:1.2
This article was previously published under Q281335
We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:
http://www.microsoft.com/technet/security/prodtech/IIS.mspx (http://www.microsoft.com/technet/security/prodtech/IIS.mspx)
On This Page

SUMMARY

When you troubleshoot Internet Information Server (IIS), it is a common practice to isolate Web applications by running them in a separate memory space, which is referred to as Out-of-Process (OOP). However, sometimes if a component is used on multiple ASP pages, and in multiple Web applications, it can be difficult to isolate the module (DLL) that contains the object from the rest of the Web site. Sometimes you must isolate a COM DLL into a separate process to determine if it contributes to problems that affect Web server performance. Component Services (COM+) 1.0, in Microsoft Windows 2000, provides the ability to isolate a COM DLL into a separate process.

Back to the top

MORE INFORMATION

The steps that follow provide a procedure for isolating a DLL. After the DLL is isolated, any process that uses the isolated DLL makes RPC calls to the Dllhost.exe process that contains the isolated DLL, rather than loading the DLL within its own process space.

How to Isolate a COM DLL in Windows 2000
1.On the Taskbar click Start, point to Programs, point to Administrative Tools, and then click Component Services.
2.Expand the Computers folder, expand My Computer, and then select the COM+ Applications folder.
3.Right-click the COM+ Applications folder, click New, and then click Application. This creates a new Application.
4.Click Next.
5.Click Create Empty Application.
6.Assign a Name to the application (that is, the same name as the COM DLL). Do not include any periods.
7.Select Server Application.
8.Click Next.
9.Set the Security Context required by the DLL by:
Selecting either the Interactive (Logged on) user.

-or-

Specify credentials to impersonate This user.


10.Click Next.
11.Click Finish.
12.To add the DLL to the new COM+ Application, right-click the Components folder that is inside the new COM+ Application.
13.Click New | Component.
14.Click Next.
15.Select Install new component(s).
16.Browse to the folder that contains the DLL to isolate.
17.Select the DLL to isolate.
18.Click Open.NOTE: You must select a COM or COM+ DLL, otherwise this error message occurs:
One or more files do not contain components or type libraries. These files can not be installed.
19.Click Next.
20.Click Finish.
21.Reset the IISADMIN service to ensure that the DLL was not in use by the InetInfo.exe process. To do this:
1.On the Taskbar click Start, and then click Run.
2.In the Run dialog box type:

iisreset
3.Click OK.
After the DLL is called you should see your new component spinning in the window.

Back to the top

REFERENCES

For more information about configuring your COM+ Application, see the Platform SDK Web site at:
http://msdn.microsoft.com/library/psdk/cossdk/pgcreatingapplications_creatingapplications_45tf.htm (http://msdn.microsoft.com/library/psdk/cossdk/pgcreatingapplications_creatingapplications_45tf.htm)
For additional information about isolating a COM DLL in Microsoft Windows NT 4.0, click the article number below to view the article in the Microsoft Knowledge Base:
281434 (http://support.microsoft.com/kb/281434/EN-US/) How to isolate a DLL into a separate process using Microsoft Transaction Server (MTS)
290884 (http://support.microsoft.com/kb/290884/EN-US/) HOWTO: Determine Which Application Is Running Within a COM+ or Transaction Server Package

Back to the top


APPLIES TO
Microsoft Internet Information Services 5.0

Back to the top

Keywords: 
kbhowto KB281335

Back to the top

Article Translations

 

Related Support Centers

Other Support Options

  • Contact Microsoft
    Phone Numbers, Support Options and Pricing, Online Help, and more.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.