Я считаю, что в "общем" случае задача не решаема.
Как правило, это будет строка REG_SZ, но может быть и binary.
Сравните
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedMRU
или
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Wallpaper\MRU
и директории из
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU
или
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall
Но это цветочки
Основная проблема в том, что имя файла в самом общем случае будет иметь вид URI
http://www.ietf.org/rfc/rfc3986.txt (140К)
Так что надо уточнить задачу. Например, не работать с относительными путями.
См. в RFC приложение Appendix A.
Кстати, можете посмотреть реализацию метода
bool QFileInfo::isFile () const из исходников QT.