您可以使用 .net 创建 Windows 资源管理器插件吗?
例如,我想创建一个支持多重重命名的简单插件。我正在考虑类似可以添加到 Windows 资源管理器工具栏上的按钮之类的东西。但我该如何做到这一点,也可以在.net 中完成吗?
For example I wanted to create a simple plugin that supports multi-rename. I was thinking of something like a button that could be added to toolbar in windows explorer. But how do I do that and also can this be done in .net?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是可以做到的,但这不一定是一个好主意。您需要包装 shell 扩展 API,它完全基于 COM,因此可以在 .NET 中使用。
但是,如果用户使用 .NET 1.1 进行任何扩展,就会出现问题。 CLR 版本 2 无法加载到加载 CLR v1.1 的应用程序中,因此这可能会导致一些非常奇怪的行为。 CLR 4 和 .NET 4 通过允许进程内并行托管 .NET 来解决这个问题。
This can be done, but it's not necessarily a good idea. You need to wrap the shell extension API, which is all COM based, so can be used from within .NET.
However, the problem arises if the user has any extensions using .NET 1.1. Version 2 of the CLR can't be loaded into an application loading v1.1 of the CLR, so this can cause some very odd behaviors. CLR 4 and .NET 4 addresses this by allowing in process side-by-side hosting of .NET.
您当然可以在 .net 中编写 shell 扩展 - 它实际上非常简单,尽管有点乏味。这是一个例子:
http://www.codeproject.com/KB/cs/dateparser.aspx
You can certainly write a shell extension in .net - it is actually quite easy although a tad bit tedious. Here is an example:
http://www.codeproject.com/KB/cs/dateparser.aspx