Q260180: Access Violation in Inetinfo.exe
Article: Q260180
Product(s): Internet Information Server
Version(s): 4.0
Operating System(s):
Keyword(s):
Last Modified: 11-JUN-2002
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Internet Information Server version 4.0
- Microsoft Windows NT Server version 4.0
-------------------------------------------------------------------------------
IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:
Q256986 Description of the Microsoft Windows Registry
SYMPTOMS
========
After you start Internet Information Server (IIS), it stops responding and an
Access Violation error message occurs with either a stack trace in a Dr. Watson
Log File or a User Dump. For examples of these, see the "More Information"
section of this article.
CAUSE
=====
This problem is caused by a misconfiguration of the NetBIOS Linkage settings,
where the NetBIOS LanaMap value must contain a two-byte value (a "tuple") for
each string in the NetBIOS Bind value. For details on how to view these values,
see the second method in the "Workaround" section of this article.
The following is an example of a single string in the Bind value:
\Device\NetBT_CPqNF31
If this is the only string in the Bind value, then the LanaMap value must contain
only one two-byte tuple for the one Bind string.
The LanaMap must contain the correct number of two-byte tuples, for example:
1 string in the "Bind" value = 1 two-byte tuple (for example, 01 01)
2 strings in the "Bind" value = 2 two-byte tuples (for example, 01 01 01 02)
WORKAROUND
==========
You can work around this issue by using one of the following two methods. The
first method requires you to restart Windows NT Server at least twice. By using
the second method, you do not need to restart Windows NT Server.
Method 1:
1. In Control Panel, click Network, and then click the Services tab.
2. Select NetBIOS Interface, and then click Remove to remove the NetBIOS
Interface.
3. Restart Windows NT Server when you are prompted.
4. In Control Panel, click Network, and then click the Services tab.
5. Click Add, and then select NetBIOS Interface from the list of Network
Services to install the NetBIOS Interface.
6. When you are prompted, supply the location of the Windows NT installation
files.
7. Restart Windows NT Server when you are prompted.
8. If a service pack has been applied to Windows NT Server, you must re-apply
it.
Method 2:
You can verify the number of strings in the Bind value and the number of
corresponding two-byte tuples in the LanaMap value by following these steps:
WARNING: If you use Registry Editor incorrectly, you may cause serious problems
that may require you to reinstall your operating system. Microsoft cannot
guarantee that you can solve problems that result from using Registry Editor
incorrectly. Use Registry Editor at your own risk.
1. Start Registry Editor (Regedt32.exe).
2. Locate the following key in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBIOS\Linkage
3. View the following value by double-clicking the value or by selecting the
value, and then clicking Multi String on the Edit menu):
Value Name: Bind
Data Type: REG_MULTI_SZ
Value: Its value will contain one or more strings such as
\Device\NetBT_CPqNF31
Click OK to close the Multi String Editor.
4. View the following value by double-clicking the value or by selecting the
value, and then clicking Binary on the Edit menu:
Value Name: LanaMap
Data Type: REG_BINARY
Value: Its value will contain sets of two-byte tuples such as 0100 (a single
two-byte tuple viewed in hex)
Click OK to close the Binary Editor.
5. Quit Registry Editor.
If the LanaMap value does not contain one set of two-byte tuples for each string
in the Bind value, use the following steps to correct this problem:
1. Start Registry Editor (Regedt32.exe).
2. Locate the following key in the registry:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBIOS\Linkage
3. Select the following value, and then click Binary on the Edit menu:
Value Name: LanaMap
Data Type: REG_BINARY
Value:
The Value field must contain one set of two-byte tuples for each string in the
Bind value. The first tuple in each set is always 01; the second tuple must
be the Lana number of the corresponding transport device that NetBIOS should
bind to (as listed in the Bind value). This value can be obtained from the
NetBIOS Configuration dialog box:
a. In Control Panel, click Network, and then click the Services tab.
b. Select NetBIOS Interface, and then click Properties.
For example, if the Lana Number in the NetBIOS Configuration dialog box for
the first device in the Bind value is 000, the first set of two-byte tuples
in the LanaMap value would be 0100. If the Lana Number for the second device
in the Bind value is 002, the second set of two-byte tuples in the LanaMap
value would be 0102.
4. Quit Registry Editor.
5. Restart the IIS services.
MORE INFORMATION
================
This configuration problem can also cause similar symptoms in Microsoft Exchange
Server. For additional information, click the article number below to view the
article in the Microsoft Knowledge Base:
Q194811 XADM: Access Violation in Store.exe
*----> Stack Back Trace <----*
FramePtr ReturnAd Param#1 Param#2 Function Name
00e0fb64 77673d4b 00000000 00000000 !wcslen
00e0fb94 68563505 00000000 00000000 mswsock!EnumProtocolsA
00e0fbbc 68563913 00e0fbd4 00000000 inetsloc!<nosymbols> (FPO: Non-FPO [1,3,3])
00e0fd9c 68561652 00000000 0023e550 inetsloc!<nosymbols> (FPO: Non-FPO [0,115,3])
00e0fdcc 68599873 00000004 00000000 inetsloc!INetRegisterService (FPO: Non-FPO [5,8,3])
00e0fe00 68c1c096 0023e550 68598fd0 infocomm!IIS_SERVICE::InitializeDiscovery (FPO: Non-FPO [0,5,2])
00e0fe08 68598fd0 0023e550 00000000 w3svc!ServiceEntry (FPO: [1,0,1])
00e0fe40 68c1bf7e 68c1be67 68c1c02c infocomm!IIS_SERVICE::StartServiceOperation (FPO: [EBP 0x00000000] [3,8,4])
00e0fe80 0100175d 00000001 000b2c70 w3svc!ServiceEntry (FPO: Non-FPO [3,9,3])
00e0ffa8 77dd8c15 00000001 000b2c70 inetinfo!<nosymbols> (FPO: Non-FPO [2,67,3])
00e0ffec 00000000 00000000 00000000 advapi32!RegisterServiceCtrlHandlerA
00000000 00000000 00000000 00000000 inetinfo!<nosymbols>
Access violation - code c0000005 (!!! second chance !!!)
eax=00089ef0 ebx=00000208 ecx=0000006c edx=00000090 esi=00000002 edi=00000018
eip=780015cc esp=00f4faf8 ebp=00f4fb60 iopl=0 nv up ei pl nz na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000202
MSVCRT!wcslen+4:
780015cc 66833900 cmp word ptr [ecx],0x0 ds:0023:0000006c=????
0:005> kv
ChildEBP RetAddr Args to Child
00f4fb60 77673d34 00000000 00000000 00f4fbb4 MSVCRT!wcslen+0x4
00f4fb90 68563505 00000000 00000000 00f4fbb4 MSWSOCK!EnumProtocolsA+0x18 (FPO: [Non-Fpo])
00f4fbb8 68563913 00f4fbd0 00000000 00000400 inetsloc!GetEnumNBLana+0x20 (FPO: [Non-Fpo])
00f4fd98 68561652 00000000 00267100 00000000 inetsloc!ServerRegisterAndListen+0x205 (FPO: [Non-Fpo])
00f4fdc8 6859ae24 00000001 00000000 00000001 inetsloc!INetRegisterService+0xd6 (FPO: [Non-Fpo])
00f4fdfc 683367be 00000000 00267100 6859acb7 INFOCOMM!IIS_SERVICE__InitializeDiscovery+0x9e (FPO: [Non-Fpo])
00f4fe08 6859acb7 00267100 68331c9c 00f4fe80 ftpsvc2!InitializeService+0x25 (FPO: [1,0,2])
00f4fe40 68336596 683364c4 68336799 683367db INFOCOMM!IIS_SERVICE__StartServiceOperation+0x9d (FPO: [EBP 0x68331c9c] [3,8,4])
68331c9c 43565350 00000000 00000031 2f4d4c2f ftpsvc2!ServiceEntry+0xc0 (FPO: [Non-Fpo])
5446534d 00000000 00000000 00000000 00000000 0x43565350
Additional query words:
======================================================================
Keywords :
Technology : kbWinNTsearch kbWinNT400search kbWinNTSsearch kbWinNTS400search kbWinNTS400 kbiisSearch kbiis400
Version : :4.0
Issue type : kbprb
Solution Type : kbpending
=============================================================================
THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.
Copyright Microsoft Corporation 1986-2002.