外壳命名空间扩展。 C#。 C ++,MFC,AT-有什么用? [英] Shell Namespace Extension. C#. C++, MFC, AT—what to use?

查看:226
本文介绍了外壳命名空间扩展。 C#。 C ++,MFC,AT-有什么用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们需要创建一个Shell命名空间扩展。我离开了windows编程在2005年,那个时候我不得不创建简单的外壳扩展,但是内置非常复杂的COM服务器(进程和退出的进程)和桌面应用程序。我们使用ATL和MFC库。

We need to create a Shell Namespace Extension. I left windows programming in 2005, that time I had to create simple shell extensions, but built very complex COM servers (in-process and out-of-process) and desktops applications. We used ATL and MFC libraries.

的时代已经过去了,现在我需要回来到Visual Studio / windows编程。我期待能够忘记所有关于ATL,MFC的C ++,用C#创建一个在去CLR的应用程序。

The time has passed and now I need to come back to visual studio / windows programming. I was expecting to be able to forget all about ATL, MFC an C++, an create applications in de CLR with C#.

我记得那是真的很难找到好的ATL / MFC开发人员,以及大多数时候我必须做的全部工作。所以,我现在想象一下,在.NET时代,这将是真正不可能找到ATL / MFC开发,可以帮助我。

I remember it was really very difficult to find good ATL/MFC developers, and most of the times I had to do the whole work. So I imagine now, in the .NET age, it's going to be really impossible to find ATL/MFC developers that can help me.

和我刚看到这在MSDN库:
HTTP: //msdn.microsoft.com/en-us/library/dd758089%28v=VS.85%29.aspx

And I've just seen this in the MSDN Library: http://msdn.microsoft.com/en-us/library/dd758089%28v=VS.85%29.aspx

Microsoft建议针对编写托管外壳扩展,不考虑他们支持的方案 -

哦,不,不,不...... 我很兴奋,并期待着使用C#,WindowsForms,甚至WPF,他们说我不能。

Oh no, no, no... I was excited and looking forward to using C#, WindowsForms, or even WPF, and they say I cannot.

所以,如果我想创建一个Windows托管C ++应用程序,是MFC / ATL是唯一的选择?难道真的是6年来有没有任何改善。所以,我必须使用相同的旧技术?

So if I want to create a Windows unmanaged C++ application, are MFC/ATL the only options? Is it really true that in 6 years there haven't had any improvement. So I have to use the same old technologies?

我现在正在寻找在Visual Studio 2010中一个更好的选择,它似乎是为C ++非托管应用程序,我们还是要使用MFC或ATL。我的问题是,如果这真的是唯一的出路。

I'm now looking for a better option in Visual Studio 2010, and it seems that for C++ unmanaged applications we still have to use MFC or ATL. My question is if this is really the only way.

现在我们假设我们必须使用旧的MS库和外壳扩展都是关于COM接口,我觉得更好的选择是ATL。

And now we assume we have to use old MS libraries, and the Shell Extensions are all about COM interfaces, I think the better option is ATL.

但也许,我们需要包括一些窗户和一些UI控件。我记得你可以添加MFC支持ATL项目或MFC项目ATL支持。我知道我有那种事情的来龙去脉,但很久以前。能否请你告诉我什么是更好的选择。

But maybe we need to include some windows and some UI controls. I remember you can add MFC support to ATL projects or ATL support to MFC projects. I know I worked with that kind of things, but was ages ago. Can you please tell me what was the better options.

由于从Java爱好者很多,
和C ++怀旧。

Thanks a Lot, from a Java lover and C++ nostalgic.

推荐答案

有过更改MFC在过去的6年中,的功能包是一个很大的进步。 更改MFC(V9)和的 MFC V10更改

There have been changes to MFC in the last 6 years, the feature pack is a big improvement. Changes to MFC (V9) and MFC V10 changes

此外ATL / MFC已经汇聚了一段时间,虽然我不会是上下跳跃对C#推荐MFC / WPF这是好多了比它是在2003年。

Also ATL / MFC have been converging for a while and whilst I wouldn't be jumping up and down to recommend MFC over C#/WPF it's a lot better than it was in 2003.

如果我今天在写一个外壳扩展,我会使用ATL开始,如果我需要MFC我想添加MFC支持ATL

If I was writing a shell extension today I'd be using ATL to start with and if I needed MFC I'd add MFC support to ATL

这篇关于外壳命名空间扩展。 C#。 C ++,MFC,AT-有什么用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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