The idea here Rob is to create a "Disk Image" file of your flash drive with TestDisk, which can then be accessed and extracted from in a way you can't access your corrupt drive directly.
If TestDisk recognizes and lists your drive, then I can't see why this won't work.
Other programs which do this "Image" creation of a corrupt drive can need more than the size of the drive in free space as they copy the entire drive to the "Image" file.
TestDisk doesn't appear to do this, although I've only got my own test to go by. My 1gb flash drive produced a 230mb file, but until we know, more space than you may need is the wisest option for now.
You probably don't need all the screenshots Rob, but as a fan of Confucius, I use them to save long winded explanations (at which I can excel), and to make it easier for any one else with a similar problem to follow.
1: Select drive.

2: Select type.

3: Select "Advanced".

4: Select "Image Creation".

5: Choose and confirm yes to Image Creation Directory. (The default appears to be the TestDisk "win" folder)

6: Image being created.

7: Newly created TestDisk "image.dd" file.

8: Rename "image.dd" to "image.img" (no quotes).

We now need to extract files from the "image.img" file, and you can do this with 7-Zip (or your own program if it can extract from an Image). Download the portable version from here ...
http://portableapps..../7-zip_portable
Double click the downloaded file and follow the dialogue to install it to a folder/location of your choice. (A portable install).
You can either open 7-Zip and browse to the Image file, or open 7-Zip and go to "Tools\Options\7-Zip tab" and add 7_Zip to the right click context menu, which IMHO is the best option for future use.
It can easily be removed if you choose to.
9: Using context menu, right click the "image.img" file and select "7-Zip ....Extract to *image/*", which will extract all files within the Image to a folder called "image" in the same location.

10: You should now have a folder named "image" containing the extracted files.

I hope this all works out as above Rob, and you get your data back, but if not we'll try a different option.
Good luck.