Microsoft KB Archive/106203

From BetaArchive Wiki
Knowledge Base

Article ID: 106203

Article Last Modified on 11/1/2006


  • Microsoft Windows NT Advanced Server 3.1
  • Microsoft Windows NT Workstation 3.1

This article was previously published under Q106203


The Find command (FIND.EXE) in Windows does not return the proper errorlevel. Under MS-DOS, FIND.EXE returns a zero (0) or one (1), based on whether a string is found in a file. It only returns a zero under Windows NT.


Microsoft has confirmed this to be a problem in Windows NT version 3.1 and Windows NT Advanced Server version 3.1. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.


Steps to Reproduce Problem

  1. Create the following batch file called FINDIT.BAT in the root directory of drive C.

          @echo off
          find %1 c:\findit.bat
          if errorlevel 1 goto ONE
          if errorlevel 0 goto ZERO
          goto END
          echo Errorlevel is 1, %1 not found
          goto END
          echo Errorlevel is 0, %1 found
          goto END
  2. Boot to MS-DOS and type the command line FINDIT ONE, FINDIT ZERO, FINDIT TWO.

    For the first two commands, it will return errorlevel 0, for the third, it will return 1.
  3. Boot to Windows NT and type the same commands.

    All commands will return errorlevel 0.

Additional query words: prodnt error level

Keywords: KB106203