【问题标题】:Thumbnail shell extension .NET缩略图外壳扩展 .NET
【发布时间】:2011-02-16 19:00:08
【问题描述】:

有人知道用 C# 编写的可在 winXP 上运行的缩略图外壳扩展吗?另外,如果不存在,是否有人知道如何在 C# 中实现 IExtractImage 接口和所有需要的结构?提前致谢。

注意:可以使用 .NET 4 来完成,并且多合一代码框架为其提供了示例,但 preVista 没有示例。

【问题讨论】:

    标签: c# windows shell interop pinvoke


    【解决方案1】:

    官方的说法是shell扩展不应该写在托管代码中。

    例如,看看Raymond 怎么说。或者MSDN的官网。

    【讨论】:

    • 仍然可以使用 C++ 编写扩展程序本身并使用 IPC 在 .net 辅助进程中自行生成。
    • 哇,我明白了 Raymond 的观点,但我还记得看过 Dino Esposito 的一些关于在 .NET 中编程 shell 扩展的文章,他实际上写了一本书,而且他是一个技术娴熟的人!想知道真相在哪里......
    • @CodeInChaos 是的,关键是您不希望它作为进程内服务器。人们也忘记了 shell 扩展不仅仅在 Explorer 中运行,它们在每个显示公共对话框的应用程序中运行。如果你弄错了,你真的会把别人的机器弄得一团糟!
    • 从 .Net 4.0 开始,这不再适用。
    • social.msdn.microsoft.com/Forums/en-US/clr/thread/7ce0c480-59e3-4732-a608-1974a908e44a/ 表示支持并且多合一代码框架提供了示例由微软支持。
    【解决方案2】:

    我写了一篇关于使用 pre-vista 缩略图扩展界面 IExtractImage 的教程。如果从头开始,那是相当困难的。仅当您了解托管代码中有关 shell 扩展的所有问题时,我才建议您这样做。

    http://blog.walkingtarget.com/2018/02/as-far-back-as-windows-2000-microsoft.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-05
      相关资源
      最近更新 更多