What's the error code returned? At what point is it failing? That is, is the key not being accepted by the CheckAndSavePKey() function, or is it failing when he's activating?
Also, tell him to try copy/pasting the key instead of typing it. Sometimes users misread/mistype letters and thus they get an error.