Microsoft KB Archive/248257

From BetaArchive Wiki

Article ID: 248257

Article Last Modified on 2/28/2007



APPLIES TO

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition



This article was previously published under Q248257

SYMPTOMS

You may experience problems installing programs that use the Shell value in the following registry location to obtain Explorer.exe settings:

HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\Shell


A program's installation routine may or may not generate error messages, but all have the same resulting problem: the program does not place icons in the Start Menu\Programs folder. This behavior occurs only if Sysprep.exe or Riprep.exe was used to create the master image.

CAUSE

The following registry entry contains a comma at the end of the value:

HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Winlogon\Shell:REG_SZ:C:\Winnt\Explorer.exe,


The trailing comma causes this problem.

RESOLUTION

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack




WORKAROUND

To Fix Images Created with Either Sysprep or Riprep

  1. Create a text file with the following contents:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
    "Shell"="Explorer.exe"

  2. Save the file. Name it Shell.reg (without a .txt extension).
  3. Create a file named Cmdlines.txt that includes the following lines:

    [Commands]
    "regedit /s c:\sysprep\i386\$oem$\shell.reg"

To Fix Images Created with Sysprep.exe

  1. Locate the Sysprep\I386 folder in the Sysprep image, and then create a $OEM$ subfolder in this folder.
  2. Copy the Shell.reg and Cmdlines.txt files into the Sysprep\I386\$OEM$ folder.
  3. In your Sysprep.inf file, add a key named InstallFilesPath to the [Unattended] section. This key should have the following value:

    InstallFilesPath = "C:\sysprep\i386"

When the mini-wizard runs, the registry key is changed back to its original correct value.

To Fix Images Created with Riprep.exe

  1. On the Remote Installation server that contains the Riprep image, create a Sysprep\I386\$OEM$ folder in the following folder:

    RemoteInstall\Setup\Language\Images\Riprep_dir_name\I386\Mirror1\UserData

  2. Copy the the Shell.reg and Cmdlines.txt files into the new $OEM$ folder.
  3. Modify the RemoteInstall\Setup\Language\Images\Riprep_dir_name\I386\Templates\Riprep.sif file (and any other template files for this Riprep image that you may have created) to add the OemPreinstall and InstallFilesPath values so that they appear as follows:

    [Unattended]
    OemPreinstall = "Yes"
    InstallFilesPath = "C:\sysprep\i386"

  4. Close and save the file.

When the Riprep mini-wizard runs, the registry key is changed back to its original correct value.

NOTE: You must use these steps for each Riprep or Sysprep image you have created. If you have already deployed systems and you are using Active Directory, you can use the following method to fix the those systems:

  1. Create a batch file named Fix.cmd on a network share to which the Everyone group has Read access.
  2. Copy the Shell.reg file to this network share.
  3. In the batch file, place the following command:

    regedit /s sharename\shell.reg

  4. Edit or create a new Group Policy object (GPO) that will apply to the systems that need to be updated with this .reg file. For information about creating or editing GPOs, please consult the Microsoft Windows 2000 Resource Kit documentation.
  5. Edit the GPO under Computer Configuration\Windows Settings\Scripts\Startup. Add the Fix.cmd file.

If you are not using Active Directory, you must apply this script to the clients by using other methods, such as logon scripts.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Windows 2000 Service Pack 1.

Keywords: kbhotfixserver kbqfe kbbug kbenv kbfix kbqfe kbsetup kbwin2000sp1fix KB248257