Dont know if there is The One good way to handle this - I decide from case to case which approach to use.
If the VM can still be launched with the damaged files used in readonly mode it is quite easy -but sometimes no ESXi command can handle the file in question and then it may be required to use dd commands to extract as much as possible while not reading the damaged section.
Call me in skype (sanbarrow) and we can arrange something - or post details.
Can you still run vmkfstools -t0 /vmfs/volumes/datastore/dir/name.vmdk > /tmp/name.vmdk.map ?
If yes - post the result
Ulli