Как создать список «Открыть с помощью», как в «Исследовать», в моем собственном приложении - PullRequest
6 голосов
/ 06 января 2012

В моем приложении пользователь может выбрать ссылку на файл, например файл изображения.Я хотел бы сделать кнопку со стрелкой, которая открывает список с программами, установленными в системе, которые могут открыть этот тип файла.

Я знаю, что я могу получить имена программ из реестра "HKEY_CURRENT_USER \ Software \Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts ", но как я могу отфильтровать записи, которые не имеют смысла -" DllHost.exe, miaui.exe и т. Д. "И как я могу открыть файл с программой, которую выбрал пользователь?

enter image description here

@ Lars Tech Если я посмотрю в реестре "HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \FileExts \ ", а затем" OpenWithList "для расширения" .jpg "Я вижу больше записей, которые, если, если ригт, нажмите на файл jpg и выберите Open With (см. Мои первые изображения), и я хочу только те.И да, есть записи программы, которые я самостоятельно добавил, но они не имеют никакого значения для файла jpg.И Windows может отфильтровать их, как и я. enter image description here

Ответы [ 2 ]

0 голосов
/ 12 сентября 2013

Если вы работаете в Vista или выше, вы можете использовать 'SHOpenWithDialog' http://msdn.microsoft.com/en-us/library/bb762234(v=vs.85).aspx - это довольно просто ... Jens

0 голосов
/ 14 января 2012

Я думаю, что вы можете использовать эту статью , чтобы проверить и выяснить, какие из них применимы и действительны в вашем приложении

...