Running TestDisk under Windows

The 'Windows' version of TestDisk (since version 5.2 or later) refers to NT 4/2000/XP/2003 only; for Win 9x see DOS version of TestDisk.

It used to run much slower than the Linux and DOS versions, but since version 5.6, that has improved. To handle hard disks larger than 137 GB, support for 48-bit Logical Block Addressing (LBA) must be available.

Windows versions of TestDisk use /dev/sdX as the disk name (where 'X' would be a, b, c... etc. for your first, second, etc. drive location) rather than 'hdX' (the usual IDE designation). 'sdX' is the linux device name for SCSI hard disks, but TestDisk doesn't know if it's an IDE, SCSI or USB disk, because this name comes from the cygwin compiler used to make the Windows version of TestDisk. That compiler has internal mappings to Windows drives that use only the names sdX.

Windows 2000 and 48-bit LBA

Windows 2000 SP3 added support for 48-bit Logical Block Addressing (LBA), which allows the OS to access hard disks larger than 137 GB. But, 48-bit LBA support must be 'enabled' in Windows 2000 SP3 or above! To do so, the EnableBigLba value must be defined and set properly in the Windows Registry by performing the following steps:

  1. Start a Registry editor (e.g., regedit.exe). In Windows, click on Start -> Run, and enter "regedit".
  2. Navigate to the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\atapi\Parameters Registry subkey.
  3. From the Edit menu, select New, DWORD Value.
  4. Type the name EnableBigLba, then press ENTER.
  5. Double-click on the new value, set it to 1, then click OK.
  6. Close the Registry editor.
  7. You must restart the machine for the change to take effect.

If you are not familiar with Regedit, you may wish to try this tool instead: http://www.48bitlba.com/enablebiglbatool.htm

Windows XP and 48-bit LBA

Windows XP Service Pack 1 (SP1) adds support for 48-bit Logical Block Addressing (LBA), which allows you to access hard disks larger than 137 GB. http://support.microsoft.com/?id=303013