Sysinternals Freeware - Mark Russinovich & Bryce Cogswell

NTFSDOS

Copyright 1996-2001 Mark Russinovich and Bryce Cogswell
Last Updated: September 11, 2001 v3.02R+

Awards

ZDNet Editor's Pick ZD Shareware 6th Annual Awards

Introduction

If you are interested in accessing NTFS drives from Windows 95 or Windows 98, then you should use NTFS for Windows 98 rather than NTFSDOS. Full read/write access to NTFS drives from DOS is available with NTFSDOS Professional Edition, part of Winternals Administrator's Pak. If you want to salvage files off a corrupt NTFS volume or repair an NTFS boot sector or partition table, see Disk Commander, also available in Winternals Administrator's Pak

NTFSDOS.EXE is a read-only network file system driver for DOS/Windows that is able to recognize and mount NTFS drives for transparent access. It makes NTFS drives appear indistinguishable from standard FAT drives, providing the ability to navigate, view and execute programs on them from DOS or from Windows, including from the Windows 3.1 File Manager and Windows 95 Explorer.

Please read this entire file before contacting us for help.

Enhancements over v2.00

Version 3.0's enhancement over v2.0 is that it is capable of accessing NTFS drives with sizes larger than 4GB.

Contents of the Package

The NTFSDOS package (see the bottom of this page) contains the following files:

Installation and Use

To use NTFSDOS, simply execute it from the DOS command line (DOS 5.0 or greater is required), or from your AUTOEXEC.BAT. Executing NTFSDOS before Windows is started will create NTFS drives that are visible globally once inside Windows. Executing NTFSDOS in a DOS box means that the NTFS drives only exist within the DOS box where NTFSDOS was executed.

When NTFSDOS starts, it will scan all hard-disk partitions on your system to look for NTFS drives. It will mount all NTFS drives it finds as unique DOS logical drive letters, and will inform you as it does so.

If you run NTFSDOS under DOS 7.0, NTFS drives will support long filename calls even before Windows starts. To propagate this support into Windows 95, NTFSDOS automatically has Windows run the NTFSHLP.VXD VxD device driver. No changes to SYSTEM.INI or the registry are necessary for this to occur - NTFSDOS will detect when Windows 95 starts and load the driver without user-intervention. You need NTFSHLP.VXD only if you will be running NTFSDOS with Windows 95.

NTFSDOS implements its own caching, and uses one of two types of memory, depending on how your system is configured. Its first choice is to use XMS memory for caching, as this minimizes demands placed on conventional memory. If you start NTFSDOS before Windows, then HIMEM.SYS, which can be found in the WINDOWS directory under Windows 95 or the DOS directory under Windows 3.1, or its equivalent, must be started before NTFSDOS. If NTFSDOS does not detect an XMS server, it will resort to allocating 64KB of conventional memory for its cache. In either case, it will inform you of its action.

NTFSDOS takes six command line parameters:

The syntax for these parameters is:

/L:<letter>
Specifies drive letter to start mounting at
/C:<size>
Specifies size of XMS cache in KB
/V
Verbose
/X
Disable extended int 13 support
/U
Tolerate unicode file names
/N
Disable support for compression

If You Have Problems Running NTFSDOS

This section lists and addresses various issues that may arise when you run NTFSDOS.

Reporting Bugs

When you report a bug please provide the following information about your system:

Implementation

NTFSDOS scans the system's partition tables looking for partitions that have the NTFS attribute byte. When it finds one, it looks for an unused DOS driver letter and registers a network drive on it. After it completes the drive search it hooks the network redirector interrupt and goes resident. Requests come into NTFSDOS as full path names, or continuations of a previous directory traversal (as with findnext), so it proceeds to determine where, based on NTFS internal data structures, the target file is located. When it retrieves the header for the target file it can determine where the file's data is located, and read it when it receives requests to do so.

To provide long filename support (LFN), NTFSDOS hooks INT 21/AH=0x71 calls and implements LFN functionality when it sees an LFN call. Under Windows 95, NTFSHLP.VXD is required to send LFN calls down to the NTFSDOS for it to process; otherwise NTFSDOS would not see LFN calls since Windows assumes DOS redirected drives do not provide LFN support.

NTFSDOS also uses the INT 2F/11 and INT 13 APIs. In addition, it contains memory and cache management plus interpretation of the NTFS on-disk structures

Read-write NTFSDOS

Winternals Product

Full read/write capability for NTFS from DOS is available with NTFSDOS Professional, available as part of Winternals Administrator's Pak Read-only capability for DOS from Windows 95/98 is available with NTFS for Windows 98.

Full read/write capability for NTFS drives from a boot floppy is now available in the form of ERD Commander 2003. ERD Commander 2003 is a command-line that starts after booting off of a standard set of Windows NT boot disks. NTFS and FAT drives can be accessed with a full suite of standard file-related commands like move, copy, delete, and rename. Get more information and download a free read-only version that has working rmdir and mkdir commands here.

Acknowlegements

We thank everybody that e-mailed us with bug reports and other feedback.

Significant understanding of the NTFS file system layout was derived by studying the Linux-based NTFS driver code maintained by Martin von Loewis. We acknowledge his indirect contribution to this endeavor.

Andrew Schulman, et. al.'s, book, Undocumented DOS 2nd Edition (Addison-Wesley), was invaluable in providing network redirector information necessary for implementing NTFSDOS.

Download NTFSDOS (39KB)

Back to Top