【问题标题】:Explorer thumbnails (winXP)资源管理器缩略图 (winXP)
【发布时间】:2010-10-20 13:07:15
【问题描述】:

我有一种文件格式,我需要能够在资源管理器缩略图中显示。由于目标系统是 windows XP,Vista PreviewHandler API 将不适合。我将使用 c++。

我该怎么做?

【问题讨论】:

  • ...你的问题是什么,究竟是什么?你看过哪些 API?

标签: c++ image thumbnails windows-explorer


【解决方案1】:

您需要为您的文件类型注册一个 shell 扩展名。该扩展包含通过实现 IExtractImage 接口来提取/生成缩略图的代码。

见:IExtractImage Interface on MSDN

【讨论】:

【解决方案2】:

https://github.com/reliak/moonpdf/tree/master/ext/sumatra/src/previewer 就是完美的例子。

要构建 x86 和 x64 版本的 DLL,我使用带有 SP1 的 VS 2010 以及安装在 Windows 7 x64 上的 Win7 x64 SDK(用于<thumbcache.h>)。构建的 DLL 在 Win7 和 Win10 上都可以正常工作。

也不要忘记/MD 链接器标志以避免在 WinXP 上安装 Microsoft Visual C++ 2010 Redistributable Package (x86)

可以将下一行添加到"targetver.h" 以避免导入和使用来自较新版本的 Windows 系统 DLL 的新函数(例如,在 WinXP 的 advapi.dll 中没有 RegDeleteTreeW):

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

此外,它还实现了某些文件格式的预览器,但在您的实现中可以完全省略相关接口。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    • 2011-02-23
    • 2010-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多