Эскизы проводника (winXP) - PullRequest
2 голосов
/ 20 апреля 2009

У меня есть формат файла, который мне нужно показать в эскизах проводника. Поскольку целевой системой является Windows XP, API Vista PreviewHandler не подойдет. Я буду использовать C ++.

Как бы я это сделал?

Ответы [ 2 ]

4 голосов
/ 20 апреля 2009

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

См .: Интерфейс IExtractImage на MSDN

0 голосов
/ 08 июня 2018

https://github.com/reliak/moonpdf/tree/master/ext/sumatra/src/previewer прекрасный пример.

Для создания версий DLL для x86 и x64 я использую VS 2010 с пакетом обновления 1 (SP1) и Win7 x64 SDK (для <thumbcache.h>), установленную в Windows 7 x64. Встроенные библиотеки DLL отлично работают на Win7 и Win10 любой битности.

Также не забудьте /MD флаг компоновщика, чтобы избежать необходимости устанавливать Распространяемый пакет Microsoft Visual C ++ 2010 (x86) на WinXP.

Следующие строки могут быть добавлены в "targetver.h", чтобы избежать импорта и использования новых функций из более новых версий системных библиотек Windows (скажем, в advapi.dll в WinXP нет RegDeleteTreeW):

#define WINVER 0x0501
#define _WIN32_WINNT 0x0501
#include <winsdkver.h>
#include <SDKDDKVer.h>

Кроме того, он имеет реализацию предпросмотра для некоторых форматов файлов, но связанные интерфейсы могут быть полностью опущены в вашей реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...