Article ID: 163914 - Last Review: February 23, 2007 - Revision: 2.2

How to Modify Boot.ini Using Sysdiff

This article was previously published under Q163914
Expand all | Collapse all

SYMPTOMS

When you use Sysdiff.exe in your deployment of Windows NT Server and Windows NT Workstation, you may notice that it does not propagate the changes to the Boot.ini file, even though it does note the modifications to the file between the /snap command and the /diff command.

CAUSE

This happens because the Boot.ini file has the file properties hidden, system, and read-only.

WORKAROUND

To allow Sysdiff to modify the Boot.ini file, you will need to change the properties of the Boot.ini file. Use Attrib.exe to change the properties; Attrib.exe can be found in your %Systemroot%\System32 subdirectory. To use Attrib.exe to change the properties of the Boot.ini file:
  1. Below your /i386 share of the source files, create a $OEM$ subdirectory, if it does not already exist.
  2. Place a copy of Attrib.exe in the $oem$ subdirectory.
  3. Perform step a or step b below, depending on whether you are using Sysdiff in the /inf mode or not.
    1. If you are using Sysdiff in the /inf mode, the $oem$ directory structure and the Cmdlines.txt file will already exist. Your Cmdlines.txt file should look like the following:
               [Commands]
               ".\attrib c:\boot.ini -s -r -h"
               ".\Rundll32 setupapi,InstalllHinfSection DefaultInstall 128
                   .\diff.inf
               ".\attrib c:\boot.ini +r +s +h"
      							

      NOTE: Make sure the attrib line appears first because commands are executed in order; the file will then have the correct properties applied when the package runs.
    2. If you are not using Sysdiff in the /inf mode, you will have to create the Cmdlines.txt file using any text editor. The file should be similar to the following example:
               [Commands]
               ".\Attrib c:\boot.ini -s -r -h"
               ".\sysdiff /apply /m .\%diff_file%"
      							

      This step will clear the hidden, system, and read-only attributes from the file and allow sysdiff /apply to propagate the changes to the file.
  4. Check your answer file and in the [Unattended] section, and make sure the following entry is set:
          OemPreinstall = Yes

APPLIES TO
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT Server 4.0 Standard Edition
Keywords: 
kbprb kbsetup KB163914
 

Article Translations

 

Related Support Centers