No nos hagamos líos, si un disco tiene problemas eléctricos o mecánicos, un software no arreglará nada ni prolongará la vida del dispositivo. Los milagros no existen.
Cuando se presentan problemas de sectores defectuosos, lo más importante es hacer un seguimiento de su evolución controlando los valores SMART con un programa del tipo CrystalDiskInfo. Si van a más suele ser un claro síntoma de fallo de hardware: el propio disco duro, el cable de datos Sata, la fuente de alimentación o incluso la placa base.
Si los sectores defectuosos se mantienen estables, pueden haber sido provocados por un problema puntual como un corte eléctrico. En esos casos el disco puede funcionar con normalidad durante mucho tiempo sin necesidad de "programas milagro". Lo que se debe hacer es identificar de forma fehaciente el tipo de "defecto" de los sectores problemáticos. Si se trata de errores lógicos del sistema de archivos, se pueden corregir chequeando el disco con el comando chkdsk de Windows. Ojo porque esto no es una solución definitiva, ya que si el error lógico afectaba a un archivo vital para el sistema operativo continuaremos con fallos, pero eso es OTRO problema. Para comprobar y reparar archivos de Windows a partir de W7, recomiendo utilizar el comando sfc /scannow.
Los sectores pendientes e incluso los no corregibles pueden ser marcados como buenos o como reasignados (todos los discos tienen un determinado número de sectores de reserva para sustituir a los que son marcados como reasignados), y para ello lo mejor es utilizar las herramientas de diagnóstico específicas de cada fabricante, como Seatools para discos Seagate o Data LifeGuard para discos WD.