If by "modifying the registry," Mr. Brearley means following the procedure described
here on the PostgreSQl Wiki, then that actually will change the data directory. That procedure actually modifies the Windows service command line (stored in the registry), and it changes the -D argument. (Yes, that appears to have been written against 8.3RC2, but I checked, and it is still applicable to 9.2 if names are changed appropriately.)
Instead of changing the service, it might be more effective to just stop the service and manually start PostgreSQL from the command line until the data can be retrieved. That would allow for somewhat more consistent usage with other operating systems, making it simpler to help. If he can get something to connect to that data directory, that would allow him to at least dump the data so it could be imported into a new, empty cluster.
My big concern as I've been reading this thread is whether users are cluster specific or installation specific. If they're cluster specific, he'll need to know credentials for his original cluster anyway to get the data, unless he can do some kind of password reset.