如何编写类似于Windows Contacts的程序

时间:2009-11-03 05:03:44

标签: c#

我想在Vista或Windows 7中编写类似于“Windows Contacts”的程序,其中新的列和菜单项添加到Windows资源管理器中,以及带有图片和选定字段的预览。

是否可以用C#编写它?

3 个答案:

答案 0 :(得分:1)

您可能希望编写Windows shell扩展。

This question可能会为您提供一些答案。

此外,here is an example显示了如何在资源管理器中插入自己的列 (注意,它已经过时了,但可能会给你一些想法)

答案 1 :(得分:0)

此类功能称为Shell扩展。特别是进程外壳扩展。

是的,在技术上可以用C#或任何其他托管语言编写它,因为它是通过COM互操作公开的。但是高度建议您不要这样做。简短的原因是您冒险将CLR注入到使用Shell命名空间(其中许多)的每个进程中。

这是一篇很好的博客文章和更多链接,详细说明了为什么这是一个坏主意。

答案 2 :(得分:0)

嗯,经过一些研究并调查了Judah Himango关于How can I create my custom Shell Context Handlers for Windows?

这个问题的答案

有一些关于使用(未来).NET 4框架在托管代码中编写shell扩展的好消息:explorer.exe将能够在同一进程中使用多个版本的.NET。这打开了在托管代码中编写shell扩展的大门,而没有.NET中遇到的已知风险。 4。

有关此帖子的更多信息: http://blogs.msdn.com/clrteam/archive/2009/06/03/in-process-side-by-side-part1.aspx