Как будет выполняться автоматическое обновление уже установленной программы? Ты же будешь сам это писать или хочешь, чтобы инсталляционный пакет этим же занимался? Если сам, то "всё просто":
1. Инсталлятор создаёт директорию программы
2. По ftp скачивает все файлы программы (можно и не по фтп, но по фтп проще самому запрограммировать)
3. Регистрирует в системе всё, что нужно зарегистрировать
Для обновления программы выполняется пункт 2 (скачиваются нужные файлы по фтп).
Проверить версию так же проще всего через файл с номером версии, лежащий на фтп - не придётся писать клиент-серверное приложение и держать серверную часть, которая только номер версии отдаёт.