This program is designed to forcibly read files that are inaccessible due to hardware failures.
Hardware I/O errors typically indicate damage to the storage medium—for example, bad sectors on HDDs or bad blocks on SSDs. Most software, including Windows File Explorer, will abort immediately when this happens to avoid unpredictable issues.
To salvage as much non-reproducible data as possible, this program is designed to skip unreadable parts and copy out the readable parts of the file. Unreadable data will be zero-filled during processing.
It is especially useful for recovering video files: a small amount of un-decodable data usually only causes brief blocky artifacts, without affecting playback for most of the video.
It is not suitable for files that require integrity, such as executable programs.
This program is easy to use and requires no specialized knowledge or special operating platform (like DOS or linux).
Support language: Deutsch, English, Español, Français, 日本語, 한국어, Português, 中文(简体), 中文(繁體).
If your Windows hasn’t had the .NET 8+ runtime installed, Windows will redirect you to Microsoft’s website and guide you to download the .NET Desktop Runtime at the first time you run this program.
If the system doesn’t redirect automatically, you can also visit Microsoft’s .NET download page, download the .NET Desktop Runtime, and install it manually.
For most users, you can ignore the options. Just select the source file and the output folder, then click "Start" and wait for the recovery to complete.
Block size mode:
- Auto: When an error is encountered, the program will automatically try smaller block sizes to recover more valid data. Recommended; balances speed and stability.
- Fixed: Always read using the specified size. Intended for advanced users. The smaller the block size, the more likely it is to reduce the amount of valid data discarded together with bad areas. However, it takes longer, and it is usually unnecessary to set it below 1 KB. If you really need it, a 1-byte option is also provided (that's absolutely crazy...).
Retry count on read error: retries when a read error occurs. In general, this is rarely necessary.
