Не удается найти обработчики предварительного просмотра, даже если приложения установлены

#c# #winforms #com #com-interop #shell-extensions

#c# #winforms #com #com-взаимодействие #расширения оболочки

Вопрос:

Я пытаюсь просмотреть файлы в своем приложении WinForms. В данном конкретном случае у меня установлены приложения Office, и я пытаюсь просмотреть файлы xls или doc.

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

 "SOFTWARE\Microsoft\Windows\CurrentVersion\PreviewHandlers"
"HKEY_CLASSES_ROOT{0}shellex{{8895b1c6-b41f-4c1c-a562-0d564250836f}}"
"HKEY_CLASSES_ROOTSystemFileAssociations{0}shellex{{8895b1c6-b41f-4c1c-a562-0d564250836f}}"
  

С {0} расширением файла.

Я нахожу зарегистрированные обработчики предварительного просмотра для pdf, txt или rtf, используя первый ключ выше. На моем компьютере зарегистрировано только 12 обработчиков предварительного просмотра…

введите описание изображения здесь

Так, например, для .doc и .docx у меня нет ShellEx заглушки:

введите описание изображения здесь

Однако я не могу найти обработчики предварительного просмотра для xls или doc. Outlook может легко показывать предварительные просмотры этих файлов с сообщениями. Если я буду следовать единственному значению, которое имеет смысл, я бы перешел к:

введите описание изображения здесь

Итак, где именно зарегистрированы обработчики предварительного просмотра?

Комментарии:

1. В списке PreviewHandlers возьмите CLSID GUID, например, средства предварительного просмотра Microsoft Word, затем вы можете найти его местоположение в LocalServer32 ключе HKEY_CLASSES_ROOTCLSID{The-CLSID-GUID}LocalServer32(Default) (-> (Default) равно null ).

2. То же CLSID самое (default) относится к строковому значению ключа ( {8895b1c6-b41f-4c1c-a562-0d564250836f} это заглушка интерфейса прокси-сервера 32), которую вы найдете, например, HKEY_CLASSES_ROOT.docxshellex{8895b1c6-b41f-4c1c-a562-0d564250836f}(default) .

3. @Jimi Это то, что я пытался сделать. Но там даже ShellEx нет ключа. Я исправил свой вопрос более подробной информацией.

4. У HKEY_CLASSES_ROOT.docx... вас нет ShellEx ключа? Почему? Подождите, у вас там нет обработчика предварительного просмотра для Microsoft Word. Установлен ли Office?

5. @Jimi. Я не знаю, почему. Это то, что у меня есть. Возможно, он использует OpenWithProgIds ключ. У меня Windows 10 и Office 365.