Программу можно и нужно устанавливать в Program Files только снабжить соответствующим манифестом для Висты, а вот все файлы, куда будет запись в профиль пользователя в Application Data/Local Settings или в крайнем случае (не желательно) в другую папку. Все зависит от условий.
Это у тебя срабатывает виртуализация из-за неверно написаной программы.
Аналогично и для ХР, там тоже запрещена запись для определеной категории пользователей.
А где лежит база, да очень просто пиши или в реестр или в ИНИ файл, только в соответстии с вышеуказаными требованиями, в реестр только в HKCU
Можешь почитать здесь о правилах работы с Вистой
Guide--
http://www.podgoretsky.com