使用什么语言编写windows shell扩展 [英] What languages to write windows shell extensions

查看:156
本文介绍了使用什么语言编写windows shell扩展的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道如何在python中编写shell扩展。

缺点是

I know how to write shell extesions in python.
The drawbacks are


  • 64位Windows

  • 我不确定如何创建一个python进程每次发生发生会降低性能。

我知道如何使用.Net(C#)编写shell扩展

缺点是

I know how to write shell extensions using .Net (C#)
The drawbacks are


  • MS不鼓励

  • 我不确定这如何降低性能。 (是吗?)

我看过用(free)pascal写的shell extenions。

I have seen shell extenions written in (free)pascal.


  • 使用此方法有瑕疵


  • Are there drawbacks using this approach
  • Does this work with 64bit windows.

一般可以使用c或c ++编写shell扩展

Obviosly one can write shell extensions using c or c++


  • 好...我仍然试图理解c和c ++中的com ....

还有什么optios其他语言?

它们有缺点吗?

What other optios are there, what other languages ?
Do they have drawbacks?

推荐答案

支持Shell Extensions的.Net,因为主要问题(无法在shell中托管多个CLR版本)已通过 side-by-side 机制:

Since .NET 4 came along, MS now do support .Net for Shell Extensions, since the major problem (cannot host multiple CLR versions in shell) has been solved through the side-by-side mechanism:


有多个
运行时与任何其他
运行时,我们现在可以提供一般的
支持写入托管shell
扩展 - 甚至那些运行
在进程与任意应用程序
在机器上。我们还不支持
支持使用
编写shell扩展任何早于.NET
Framework的版本,因为这些版本的
运行时不加载进程
在许多情况下会导致
失败。

With the ability to have multiple runtimes in process with any other runtime, we can now offer general support for writing managed shell extensions—even those that run in-process with arbitrary applications on the machine. We still do not support writing shell extensions using any version earlier than .NET Framework 4 because those versions of the runtime do not load in-process with one another and will cause failures in many cases.

这篇关于使用什么语言编写windows shell扩展的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆