http://support.microsoft.com/kb/840669

When you start your Microsoft Windows 2000-based, Windows XP Service Pack 1 (SP1)-based, or Windows XP Service Pack 2 (SP2)-based computer on a wired network or on a wireless network that has 802.11 authentication, Group Policy may not apply as expected, or the computer may not join the Active Directory directory service. 

When you view the log files in Event Viewer, you see the following entries:

 

  • Event ID: 1054 
    Source: Userenv 
    Type: Error 
    Description: Windows cannot obtain the domain controller name for the computer network. (The specified domain either does not exist or exist or could not be contacted). Group Policy processing aborted. Data: (unavailable)

  • Event ID: 1000 
    Source: UserInit 
    Type: Error 
    Description: Could not execute the following script AdminPassword.bat. The system cannot find the file specified. Data: (unavailable)

 

Additionally, the following entries are logged in the Userenv.log log file:

 

  • USERENV(52c.18c) 16:36:14:597 ProcessGPOs: The DC for domain <domain> is not available at startup. Retrying.

  • USERENV(52c.18c) 16:36:14:597 RetryDCContactAtMachineStartup: Enter.

  • USERENV(52c.18c) 16:36:14:597 RetryDCContactAtMachineStartup: Failed to query GpNetworkStartTimeoutPolicyValue with 2, exit.

  • USERENV(52c.18c) 16:36:14:597 RetryDCContactAtMachineStartup: Exit with status 1355.

  • USERENV(52c.18c) 16:36:14:597 ProcessGPOs: The DC for domain <domain> is not available after retries.

  • USERENV(52c.18c) 16:36:14:597 ProcessGPOs: The DC for domain <domain> is not available. aborting

  • USERENV(52c.18c) 16:36:14:757 ProcessGPOs: No WMI logging done in this policy cycle.

  • USERENV(52c.18c) 16:36:14:757 ProcessGPOs: Processing failed with error 1355.

 

 

CAUSE

 

This problem may occur if the Group Policy engine or Active Directory times out while it waits for the network to start. A race condition may occur between the TCP/IP protocol and the network adaptor driver when they try to register with the Microsoft Network Driver Interface Specification (NDIS). If the TCP/IP protocol registers with NDIS before the network adaptor driver, for a short time it prompts higher user mode networking components that network connectivity is not available. During this short time, the Group Policy startup script cannot be downloaded.

This problem is more likely to occur on fast networks that use 1-gigabit network adaptors or in teaming environments where the network takes several additional cycles to negotiate link speed.

 

 

 

Windows 2000

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix. 

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
 
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
 
Prerequisites
No prerequisites are required.
 
Restart requirement
You must restart the computer after you apply this hotfix.
 
Hotfix replacement information
This hotfix does not replace any other hotfix.
 
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
 
   Date         Time   Version             Size  File name    ----------------------------------------------------------    17-Jun-2004  23:05  5.0.2195.6951     46,352  Basesrv.dll    21-Sep-2003  00:45  5.0.2195.6824    236,304  Cmd.exe    17-Jun-2004  23:05  5.0.2195.6945    231,184  Gdi32.dll    17-Jun-2004  23:05  5.0.2195.6946    712,464  Kernel32.dll    24-Mar-2004  02:17  5.0.2195.6898     37,136  Mf3216.dll    24-Mar-2004  02:17  5.0.2195.6824     54,544  Mpr.dll    17-Jun-2004  23:05  5.0.2195.6928    335,120  Msgina.dll    24-Mar-2004  02:17  5.0.2195.6892     90,264  Rdpwd.sys    06-Jan-2005  04:29  5.0.2195.7017  6,278,656  Sp3res.dll    24-Mar-2004  02:17  5.0.2195.6897    403,216  User32.dll    18-Jan-2005  05:44  5.0.2195.7021    396,048  Userenv.dll    10-Aug-2004  03:51  5.0.2195.6966  1,632,624  Win32k.sys    24-Aug-2004  22:59  5.0.2195.6970    182,544  Winlogon.exe    17-Jun-2004  23:05  5.0.2195.6946    244,496  Winsrv.dll    17-Jun-2004  23:05  5.0.2195.6946    712,464  Kernel32.dll    10-Aug-2004  03:51  5.0.2195.6966  1,632,624  Win32k.sys    17-Jun-2004  23:05  5.0.2195.6946    244,496  Winsrv.dll
After you apply this hotfix, you must add the GpNetworkStartTimeoutPolicyValue registry entry. This entry defines the number of seconds to wait before you try to run the Group Policy startup script again. To find the value that will work for your configuration, define a decimal value of 60, and then increase the value until the problem is resolved. To add the registry entry and to define the value, follow these steps:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Expand the following subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  3. Right-click Winlogon, point to New, and then click DWORD Value.
  4. To name the new entry, type GpNetworkStartTimeoutPolicyValue, and then press ENTER.
  5. Right-click GpNetworkStartTimeoutPolicyValue, and then click Modify.
  6. Under Base, click Decimal.
  7. In the Value data box, type 60, and then click OK.
  8. Quit Registry Editor, and then restart the computer.
  9. If the Group Policy startup script does not run, increase the value of the GpNetworkStartTimeoutPolicyValue registry entry.

 

Windows XP Service Pack 1

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix. 

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
 
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language. The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Windows XP, 64-bit versions
   Date         Time   Version        Size       File name     Platform    --------------------------------------------------------------------    04-Jun-2004  05:52  5.1.2600.1534  1,718,272  Userenv.dll   IA-64    04-Jun-2004  05:44  5.1.2600.1534    672,256  Wuserenv.dll    x86
Windows XP, 32-bit versions
 
   Date         Time   Version        Size     File name    -------------------------------------------------------    04-Jun-2004  05:44  5.1.2600.1534  672,256  Userenv.dll
Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
 
322756  How to back up and restore the registry in Windows


After you apply this hotfix, you must add the GpNetworkStartTimeoutPolicyValue registry entry. This entry defines the number of seconds to wait before trying to run the Group Policy startup script again. To find the value that will work for your configuration, define a decimal value of 60, and then increase the value until the problem is resolved. To add the registry entry and to define the value, follow these steps:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Expand the following subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  3. Right-click Winlogon, point to New, and then click DWORD Value.
  4. To name the new entry, type GpNetworkStartTimeoutPolicyValue, and then press ENTER.
  5. Right-click GpNetworkStartTimeoutPolicyValue, and then click Modify.
  6. Under Base, click Decimal.
  7. In the Value data box, type 60, and then click OK.
  8. Exit Registry Editor, and then restart the computer.
  9. If the Group Policy startup script does not run, increase the value of the GpNetworkStartTimeoutPolicyValueregistry entry.

 

Windows XP Service Pack 2

After you apply Windows XP Service Pack 2, you must add the GpNetworkStartTimeoutPolicyValue registry entry. This entry defines the number of seconds to wait before trying to run the Group Policy startup script again. To find the value that will work for your configuration, define a decimal value of 60, and then increase the value until the problem is resolved. To add the registry entry and to define the value, follow these steps:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Expand the following subkey:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  3. Right-click Winlogon, point to New, and then click DWORD Value.
  4. To name the new entry, type GpNetworkStartTimeoutPolicyValue, and then press ENTER.
  5. Right-click GpNetworkStartTimeoutPolicyValue, and then click Modify.
  6. Under Base, click Decimal.
  7. In the Value data box, type 60, and then click OK.
  8. Exit Registry Editor, and then restart the computer.
  9. If the Group Policy startup script does not run, increase the value of the GpNetworkStartTimeoutPolicyValueregistry entry.

 

Creating a Group Policy network start timeout policy

The GpNetworkStartTimeoutPolicyValue policy timeout can be specified in the registry in two locations:
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\Current Version\Winlogon
  •  
  • HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System
You can do this by adding a DWORD value of GpNetworkStartTimeoutPolicyValue with a number of seconds between 30 and 600.

Windows reads the Winlogon subkey first. Then, Windows reads the Policies subkey. The value in the Policies subkey supersedes any value in the Winlogon subkey. There is no user interface that you can use to set this Group Policy object (GPO). Therefore, you have to deploy a custom ADM file in order to set the GPO.

The value specified should be of sufficient duration to make sure that the connection is made. During the timeout period, Windows examines the connection status every two seconds and continues with system startup as soon as the connection is confirmed. Therefore, setting the value larger than the minimum value of 30 is recommended. However, be advised that if the system is legitimately disconnected, Windows will stall for the whole timeout period. 

Note Examples of the system being legitimately disconnected include the network cable being disconnected or if the server is offline.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Note This problem is known to occur on Toshiba Dynabook laptops that use an Intel network adapter. The third-party products that this article discusses are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.