If your data are really important, the first thing is
If it is a hardware problem, the number of times your disk can be access may well be very limited.
Therefore the priority is NOT to try many solution to retrieve the data but to make a low level copy of the whole disk as soon as possible. If the disk dies when you’re trying something, you are screwed.
When this is done, you can play at trying the different solutions on your copy.
To get a low level copy, you should remove the disk from the computer, put it in an external box.
Plug it into a linux PC and backup the partitions one by one (linux AND windows) into another disk using dd.