You may notice multiple instances of Inetinfo.exe on the computer or you may receive an error message when you try to start an IIS service (905423)



The information in this article applies to:

  • Microsoft Internet Information Services version 6.0

Notice

SYMPTOMS

When you start a Microsoft Internet Information Services (IIS) 6 service, you may notice multiple instances of Inetinfo.exe on the computer. Additionally, if you try to start an IIS service when another IIS service is running, you may receive an error message that is similar to one of the following in Event Viewer:
Event Type:	Error
Event Source:	Service Control Manager
Event ID:	7023
Description: The IISservice service terminated with the following error: Incorrect function.
Event Type:	Error
Event Source:	Service Control Manager
Event ID:	7023
Description: The IISservice service terminated with the following error: The system can not find the file specified.
Note In this error message, IISservice is the name of the IIS service that you try to start.

CAUSE

This problem occurs if the value of one of the following registry keys is set to 0x00000010:
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMTPSVC\Type
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Type
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSFtpsvc\Type
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NntpSvc\Type
If the value of one of these registry keys is set to 0x00000010, the Service Control Manager starts an instance of Inetinfo.exe to host the process.

RESOLUTION

To resolve this problem, configure IIS services to start in a shared process. To do this, follow these steps:
  1. Click Start, click Run, type cmd, and then click OK.
  2. At the command prompt, type the following where IISservice is an IIS service, and then press ENTER:

    Sc query IISservice

    For example, type Sc query MSFTpsvc to query the FTP Publishing Service service.
  3. If the Type value in the output is 10, type the following where IISservice is an IIS service, and then press ENTER:

    Sc config IISservice type= share

    For example, type Sc config MSFTpsvc type= share to configure the FTP Publishing Service service to start in a shared process.

MORE INFORMATION

When you start an IIS service, the service tries to initialize the Asynchronous Thread Queue (ATQ) Pool. The ATQ Pool then tries to initialize the Spud.sys file. Because only one process can host the Spud.sys file, a second IIS service cannot initialize the Spud.sys file. The second IIS service does not start as expected.

When the Type value for the registry keys in the "Resolution" section is set to 0x00000010, the Service Control Manager will start an instance of Inetinfo.exe to host the process. When a second IIS service is started, another instance of Inetinfo.exe is initialized. The second IIS service does not start as expected. When the Type value for the registry keys is set to 0x00000020, the service will load in a shared process.

Modification Type:MajorLast Reviewed:9/20/2005
Keywords:kbWebServer kbtshoot kbprb KB905423 kbAudITPRO