Safe Recovery with Setup Log Files

Windows 95 Setup creates several log files: BOOTLOG.TXT, DETLOG.TXT, NETLOG.TXT, and SETUPLOG.TXT, plus DETCRASH.LOG if Setup fails. The following sections describe these files.

Basically, there are three points at which the computer might stop or stall during Windows 95 Setup: before, during, or after hardware detection.

SETUPLOG.TXT: The Setup Log File

The SETUPLOG.TXT file is an ASCII text file that contains Windows 95 Setup information created during the installation process. While Windows 95 is being installed, corresponding entries are written to SETUPLOG.TXT, listing information about the specific steps, their sequence, and the error conditions encountered. This file is used by Setup for recovery in case of setup failure, and it can also be used for troubleshooting errors that occur during the installation process.

Setup uses the information in SETUPLOG.TXT to ensure that the installation does not fail twice because of the same problem. If you restart Windows 95 Setup after a setup process fails, Setup reviews the contents of SETUPLOG.TXT to determine which steps completed successfully. If SETUPLOG.TXT indicates that a process started but does not indicate that the process completed, then that part of the installation process is skipped and the next part is processed. Even if Setup encounters devices that cause several installation attempts, the installation process will always progress and skip the modules that failed.

SETUPLOG.TXT is stored on the computer's root directory. Information is added to the file according to the order of the steps of the installation process. If an error occurs during installation, you can determine the probable cause of the error by examining the entries at the end of SETUPLOG.TXT.

Information in SETUPLOG.TXT is divided into the following basic categories:

Tip The [OptionalComponents], [System], and [NameAndOrg] sections can be copied from SETUPLOG.TXT on a computer with a complete installation of Windows 95 and then added to equivalent sections in MSBATCH.INF, as described in Chapter 5, "Custom, Automated, and Push Installations." Notice, however, that these sections in SETUPLOG.TXT do not include networking information.

The following table shows entries in SETUPLOG.TXT file to check for information about the Setup process. Because entries are added to SETUPLOG.TXT in the order that the related actions occur during Setup, you might be able to find a probable cause of any error by examining the entries at the end of the file.

SETUPLOG.TXT entry

Description

InstallType

Type of installation

InstallDir

Directory where Windows 95 is installed

detection

Detection status

RunningApp

Applications running during installation

RootFilesRenamed

Files renamed in the root directory

error

Errors logged during installation

failed

Failures that occurred during installation

[OptionalComponents]

Optional components installed

[System]

System hardware configuration

batch settings

Installation parameters (that is, MSBATCH.INF settings)

Registry

Registry initialization status

filename

Verification that a specific file was loaded during Setup

[Choose Directory]

Location and type of Windows files

[FileCopy]

Files copied during Setup

[Restart]

Issues to be completed after the computer is restarted


Tip for Verifying System Files

With Windows 3.x, it was not easy to recover files, such as a component file that was accidentally deleted or a system file that was corrupted. You either had to use the Expand utility to copy the file, or you had to reinstall Windows 3.x to restore the lost file. SETUPLOG.TXT is part of the Windows 95 solution to verifying the integrity of installed components.

If you run Windows 95 Setup after Windows 95 is already installed, Setup prompts you either to reinstall Windows 95 or simply to verify installed components. If you want to verify installed components, Setup examines SETUPLOG.TXT and reruns the installation process without completely copying all operating system components. Windows 95 verifies the integrity of files installed during Setup with the files on the Windows 95 installation disks. If the integrity check fails due to a missing or corrupted file on the computer, Setup automatically reinstalls that file.

DETLOG.TXT: The Hardware Detection Log File

The DETLOG.TXT file contains a record of whether a specific hardware device was detected and identifies the parameters for the detected device.

During Windows 95 Setup, after the information gathering phase, Setup begins hardware detection, which can also occur when you use the Add New Hardware option in Control Panel to add a new device. Both Windows 95 Setup and Device Manager use SYSDETMG.DLL, which contains all the detection modules for each device class and specific devices.

Windows 95 loads detection modules based on information in MSDET.INF that points to specific INF files for each device class, from which information is retrieved and written to the Registry. The device class installers are DLLs that work with Device Manager to install, configure, and remove devices or classes of devices in the system. Device Manager generates a list of compatible drivers for the device from the appropriate INF file. For information about using Device Manager to configure device drivers, and for information about the device classes used to identify logical device types, such as display, keyboard, and network adapters, see Chapter 19, "Devices."

By creating an updated DETLOG.TXT file every time the detection process runs, the detection module tracks the detected devices and the I/O port addresses used. Any existing DETLOG.TXT is renamed DETLOG.OLD. If the detection process causes Setup to stall or the computer to lock up, then a binary file named DETCRASH.LOG is created. DETLOG.TXT is an ASCII text file created only for users to read; Windows 95 Setup reads the binary information in DETCRASH.LOG. Any changes made to DETLOG.TXT are not passed to DETCRASH.LOG.

The DETLOG.TXT file can be found in the root directory of the startup drive after Windows 95 is installed. The entries in DETLOG.TXT are placed in the order of the hardware information discovered as each step of the detection process is carried out. The following table briefly describes entries that appear in DETLOG.TXT.

Summary of DETLOG.TXT Entries

Entry

Description

Beginning of DETLOG.TXT:

Parameters="xxxxxx"

Shows the switches specified in the Setup command line (that is, setup /p xxxxxx). For example:

Parameters "", Flags=01002233

WinVer = ########

Shows that environment detection is run. The MS-DOS version is in the high word and the Windows version is in the low word. For example:

WinVer=0614030b,

AvoidMem=
#####h-#####h

If present, indicates the address range specified as upper memory blocks (UMB), which detection avoids. For example:

AvoidMem=cd4a0-cd50f

DetectClass: Skip Class Media

Indicates that detection found no hints that the computer might have a particular device, so it skipped that class. For example, DetectClass: Skip Class Media indicates that no sound entries appear in the configuration files, so detection skips all the sound card detection modules. For DetectClass: Skip Class Adapter, detection skips searching for proprietary CD-ROM adapters such as SONY, Mitsumi, and Panasonic. DetectClass: Skip Class Net indicates that detection was skipped for network adapters.

DetectClass Override:

If one or more skip class entries appear in DETLOG.TXT, the Analyzing Your Computer screen appears in Setup to confirm skipping those classes, so you can override the decision. Related DetectClass Override lines appear in DETLOG.TXT for the classes checked.

Custom Mode:

Describes your selection for the devices you tell Windows 95 not to detect. For example:

CustomMode: resetting class ADAPTER
; Don't detect EtherLinkIII
CustomMode: DETECTELNK3=0

Devices verified =

Indicates the number of devices verified from the Registry. If the number is 0, it usually means there was no existing Registry or the Registry was empty.

Detecting system devices:

Checking for:

Specifies that detection began looking for that device. The entry is followed by description of the device or class being sought. When detection is checking for a device such as the Programmable Interrupt Controller, the Checking for: entry is followed by a QueryIOMem: entry specifying the Caller, rcQuery, and I/O range checked. If a device is detected, then a Detected: entry is added, specifying the device resource information. For example:

Checking for: Programmable Interrupt Controller
QueryIOMem: Caller=DETECTPIC, rcQuery=0
IO=20-21,a0-a1
Detected: *PNP0000\0000 =
[1] Programmable Interrupt Controller
IO=20-21,a0-a1
IRQ=2

Detecting network adapters:

Checking for:

This section lists the attempts to detect network adapters. For example:

Checking for: Network Cards using Novell
ODI Driver
Checking for: EISA Network Cards

PROTOCOL.INI Section

If detection finds PROTOCOL.INI, it saves the [net_card] section in DETLOG.TXT. For example:

Checking for: Network Cards using
Microsoft Windows For Workgroups
; path to WFW protocol.INI
WFW: path=d:\w311\protocol.ini
; protocol.ini mac driver section
Protocol.ini: [MS$EE16]
Protocol.ini: DriverName=EXP16$

NCD: detecting network adapter

Indicates that detection has found a network adapter using safe detection (usually PROTOCOL.INI), but the system has information for verifying this adapter. If this adapter is verified, a Detected line follows. For example:

NCD: detecting network adapter *pnp812d
QueryIOMem: Caller=DETECTWFW, rcQuery=0
IO=300-30f


The hardware detection process continues examining computer hardware. The "|" symbol in the IO= line (for example, IO=200-201 | 3e0-3e1) indicates a range of I/O entries that are checked during the detection process. In the DETLOG.TXT file, you will find a QueryIOMem: and an IO= line for each I/O address checked.

For most devices, multiple I/O addresses are checked, which can result in a detailed and redundant device detection list. The I/O address ranges checked during detection are grouped on one I/O line. Multiple addresses on an IO= line are separated by commas. For example:


Checking for: ATI Ultra Pro/Plus (Mach 32) Display Adapter
QueryIOMem: Caller=DETECTMACH32, rcQuery=0
   IO=3b0-3bb,3c0-3df
QueryIOMem: Caller=DETECTMACH32, rcQuery=0
   Mem=a0000-affff

If the system stalls during hardware detection, you can determine the probable cause of the error by examining the last entries in DETLOG.TXT. You can use the information in this file to determine specific error conditions occurring in the hardware detection, and reconfigure or replace the specific adapter or device. The following table shows specific kinds of entries to check in DETLOG.TXT for information about the results of the hardware detection process.

DETLOG.TXT Entries to Check for Troubleshooting

Entry

Description

detected

Detected devices

AvoidMem

Address ranges of UMBs avoided during detection

error

Errors logged during system detection

WinFlags

Setup mode used

PROTOCOL.INI

PROTOCOL.INI information that was saved during system upgrade

CustomMode

Hardware that was removed from detection in the custom Analyzing Your Computer dialog box

Devices verified

Devices found in Registry; if the value is 0, then there was no existing Registry or the Registry was empty


Some additional notes on DETLOG.TXT and hardware detection:

The hardware that has been tested and shown to be compatible with Windows 95 appears in the Manufacturers and Models lists in the Add New Hardware option in Control Panel.

NETLOG.TXT: The Network Setup Log File

This file describes the detection results for network components during Windows 95 Setup. For information about NETDET.INI, the file that Setup uses to determine how to install networking components on computers running NetWare clients, see Chapter 9, "Windows 95 on NetWare Networks."

The following table describes typical entries in a NETLOG.TXT file after you run Windows 95 Setup for the first time. In this example, Client for Microsoft Networks is installed with the IPX/SPX-compatible protocol, and both are bound to an Intel® EtherExpress™ network adapter.

NETLOG.TXT entry

Description

ClassInstall (0x6) on Intel EtherExpress 16 or 16TP at Enum\Root\*PNP812D\0000

Network installation begins.

Examining class NET

Network detection is searching for network software of four class types: NET (network adapters), NETTRANS (protocols), NETCLIENT (clients), and NETSERVICES (services such as File and Printer Sharing).

Upgrade 2.00025000=VREDIR

A network client was found on the computer.

Upgrade to: VREDIR

The version of the network client was upgraded to the version included in Windows 95.

NdiCreate (Client for Microsoft Networks) OK

Setup successfully created an internal object representing the network client.

NdiCreate (Intel EtherExpress 16 or 16TP)

Setup successfully created an internal object representing the network adapter.

CreateNetwork, Batch=0

Setup referenced a batch file.

NdiCreate (IPX/SPX-compatible Protocol)

Setup successfully created an internal object representing the IPX/SPX-compatible protocol.

ClassInstall (0x6) end

ClassInstall (0x9) on Intel EtherExpress 16 or 16TP at Enum\Root\*PNP812D\0000

Protocols are about to be bound to the network adapter.

Validating IPX/SPX-compatible Protocol at Enum\Network\NWLINK\0000, rc=0x0

The IPX/SPX-compatible protocol is added to the Registry and bound to the network adapter.

ClassInstall (0x9) on Intel EtherExpress 16 or 16TP at Enum\Root\*PNP812D\0000

Clients are about to be bound to the network adapter.

Validating Client for Microsoft Networks at Enum\Network\VREDIR
\0000, rc=0x0

Client for Microsoft Networks is added to the Registry and bound to the network adapter.

ClassInstall (0x9) end

Setup has finished binding the protocol to the network adapter.

ClassInstall (0xa) on Intel EtherExpress 16 or 16TP at Enum\Root\*PNP812D\0000

The network setup process is concluded.

ClassInstall (0xa) end

ClassInstall (0xc) on Intel EtherExpress 16 or 16TP at Enum\Root\*PNP812D\0000

ClassInstall (0xc) end