Есть ли способ программно установить раздел реестра «UserChoice», чтобы он взял на себя ассоциацию типов файлов?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ программно установить раздел реестра «UserChoice», чтобы он взял на себя ассоциацию типов файлов?

Сообщение Anonymous »

Я пытался найти способ изменить ассоциацию файлов по умолчанию для
определенного расширения файла в Windows 7. У меня есть приложение, которое используется для просмотра файлов .tif
, которые я хочу подскажите пользователю, не является ли он средством просмотра по умолчанию для этого типа файлов. Если они решат сделать его значением по умолчанию, я хочу переопределить текущее средство просмотра
по умолчанию. Это работает нормально, если в
системе не установлены другие программы просмотра. Если пользователь выбрал другую программу просмотра, я
не могу изменить раздел реестра, который управляет этим здесь:

HKCU\Software \Microsoft\Windows\CurrentVersion\Explorer\FileExts\.tif\UserChoice


Я просмотрел Интернет, пытаясь найти кого-нибудь, кто это сделал, но никто
похоже, есть ответы. Когда я пытаюсь обновить значение «Progid» в этом
ключе, я получаю ошибки «Невозможно выполнить запись в раздел реестра» или «Запрошенный доступ к реестру
не разрешен». Код достаточно прост:

Код: Выделить всё

var path = @"Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.tif\UserChoice";
var key = Registry.CurrentUser.OpenSubKey(path, true);
key.SetValue("Progid", "myprogid...");
Существует ли какая-либо специальная защита этого ключа, предотвращающая его
программное редактирование?

Подробнее здесь: https://stackoverflow.com/questions/619 ... -to-take-o
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»