Нет встроенного способа чтения ключей реестра, но для этого существуют различные сторонние библиотеки только для Windows. Конечно, вы должны избегать этого, если можете - почему бы не написать переносимый код, который не использует реестр, если вы можете? В этом нет необходимости.
Что касается установщиков, есть ряд продуктов, которые делают это: InstallAnywhere , например.