Microsoft KB Archive/106203
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
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 :ONE echo Errorlevel is 1, %1 not found goto END :ZERO echo Errorlevel is 0, %1 found goto END :END
- 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.
- Boot to Windows NT and type the same commands.
All commands will return errorlevel 0.
Additional query words: prodnt error level