Knowledge Base

ErrMsg: The Directory Name Is Invalid

Article ID: 164545

Article Last Modified on 11/1/2006


APPLIES TO


This article was previously published under Q164545

SYMPTOMS

When using the Pipe I/O redirection command ("|" without the quotes) in a batch file or in an MS-DOS session from within Windows NT, the following error may occur:
The directory name is invalid.

CAUSE

The environment size value for the Comspec variable was explicitly set to a value greater than 2048.

For example:

Under System Variables, the value for Comspec appears as follows:
   ComSpec %SystemRoot%\system32\cmd.exe /e:xxxx
				

Where %SystemRoot% will be the drive and directory name where NT is installed, and xxxx is a value equal to or greater than 2048.

WORKAROUND

To work around this problem, perform one of the following:
  • Remove the /e:xxxx switch from the Comspec environment variable.

    The ComSpec environment variable is dynamic for Windows. Removing the /e: switch and its value may allow proper execution of the command.

    -or-
  • Use the redirection symbol ( >) to perform the equivalent command.

    Example:

    DIR *.* | MORE <enter>

    This command is equivalent to

    DIR *.* > PIPE0 <enter>
    MORE < PIPE0 <enter>

STATUS

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

Additional query words: Pipe redirection invalid

Keywords: kbbug kbenv KB164545