Попробуйте использовать следующий код:
image_view.setImageResource(R.drawable.my_drawable_file)
Для получения дополнительной информации перейдите по следующей ссылке:
https://android--code.blogspot.com/ 2018/03 / Android-Kotlin-ImageView-множество-image.html
И на XP и на Vista Вам нужны права администратора для записи нового ключа под LocalMachine.
Вы будете находить, что это работает над XP и перестало работать на Vista из-за различных значений по умолчанию учетной записи.
Быстрое и грязное решение состоит в том, чтобы гарантировать Ваше выполнение приложения правами администратора в обоих случаях, хотя в на Vista это имеет тенденцию быть осужденным.
Лучшее решение состояло бы в том, чтобы перепроектировать вещи немного - новый sub ключ может быть записан Вашим установщиком (который работает с правами администратора), или Вы могли хранить свою информацию где-то в другом месте?
У типичных пользователей, и рабочий администратор с контролем учётных записей на Vista, нет разрешения записать локальный ключ реестра машины. Это перестало бы работать на XP также, если бы Вы работали как типичный пользователь.
Ваши опции:
Можно только записать в тот ключ, если Вы работаете как администратор. Таким образом, необходимо будет запустить VS как администратор, и пользователи должны будут запустить приложение как администратор.
Мое предложение состояло бы в том, чтобы видеть, необходимо ли действительно записать в LocalMachine. Можно записать в CurrentUser без прав администратора.
Я предполагаю, что это "работает под XP", потому что все выполняют его как Администратор под XP?
Вы, которых желание могло попытаться обойти (создают ключ во время Установки или используют ключ под CurrrentUser или чем-то).
Вы могли предоставить полномочие своему Приложению во время Установки. Я боюсь, что я немного короток в деталях о том, как сделать это.