免费的Visual Studio Express 2012 for Windows Desktop
[原文发表地址] FREE: Visual Studio Express 2012 for Windows Desktop
[原文发表时间] 2012-09-13 7:06
当最初公布 Visual Studio 2012免费版本时,我注意到的第一件事是它们从一个特定于语言的模型 (C# Express版、 VB Express等) 转换到了特定于目标的模型 (Windows 8,Web)。然而,我当时很惊讶 (和失望)没有免费的方式来制作控制台应用程序,或者 Windows Forms应用程序,或任意东西来用于 Windows Desktop。我并不是唯一一个认为这是一个问题的人。不久之后 (带着很多人的推动) Soma 宣布将推出一个"Windows Desktop" Express 免费版本。他说:
… … 我们从社区中听说开发人员想要一个针对Windows 桌面开发的同样杰出的体验,并想获得最新的 Visual Studio 2012 Express级别的功能。
今天,我很高兴地宣布我们将添加 Visual Studio Express 2012 for Windows Desktop 到 Visual Studio 2012 产品系列中。这将为 Visual Studio Express产品系列带入重大的新功能,并且在 Visual Studio 2012中,我们将启用这些功能来构建杰出的桌面应用程序。
我很高兴,人们意识到无成本桌面软件开发是很重要的。开放源码项目需要像Express SKU 之类的免费工具。更好的事情是Express Desktop SKU 也拥有新的 VS 2012的功能。
今天 Visual Studio 已将Visual Studio Express 2012 for Windows Desktop 作为可用了,你现在可以去免费下载它了。此SKU最好的部分是一起支持 C + +、 C# 和 Visual Basic。拥有了这一免费版本,你可以使用Visual Basic、 C#制作WinForms 、WPF、控制台、类库,以及使用C+ + 制作 Win32 项目、 类库和 CLR 应用程序。当然您还可以将多种语言的项目结合成为一个单个的解决方案。您可以指向.NET 4.0 和 4.5。
注: 您可能想知道,免费的 F #怎么样呢?为什么不包括F #?我们已经得到了一个免费下载来添加 F # 支持到免费的 Visual Studio Express 2012 for Web中 !
相关的链接
- Visual Studio 2012 for Windows Desktop的下载页面(web 安装程序或 ISO)
- VS2012 for Windows Desktop的产品页面和详细信息
- Visual Studio 2012 Express for Web 的F #工具(如果您已经安装了 Pro(专业版),你 * 不 * 需要此F# 工具,它仅仅只是针对Express for Web)
虽然Express SKU 不允许任意外接程序 (您需要 Pro),但是免费的 SKU包括单元测试、 代码分析,以及 NuGet 软件包管理器。NuGet 现已列入所有 Visual Studio 2012 SKU中,甚至包括在Express中, 这对于我的小组来说个不错的改变,软件包管理最终发生在.NET 中。
在下面的截图中,我使用Express for Windows Desktop,已经添加了一个C+ + 控制台应用程序、 一个C# Window Forms应用程序和 C# 控制台到在一个单个的VS2012解决方案中。
只是为了说明我认为免费的" Desktop "SKU是如此重要的原因之一,我想要分享一个我最近发现的、非常酷的、称为Topshelf开放源码项目。这是一个使用.NET让 Windows Services更易于编写的库。它在GitHub上的Apache 许可证下。使用Nuget获取Topshelf的最简单的方法就是"install-package Topshelf"。Topshelf 还有一些令人印象深刻的文档,尤其是对于一个开放源码项目 !
下面是一个简单的 Windows Service,使用 Topshelf,有一个基本的心跳计时器:
1: public class TownCrier
2: {
3: readonly Timer _timer;
4: public TownCrier()
5: {
6: _timer = new Timer(1000) {AutoReset = true};
7: _timer.Elapsed += (sender, eventArgs) => Console.WriteLine("It is {0} an all is well", DateTime.Now);
8: }
9: public void Start() { _timer.Start(); }
10: public void Stop() { _timer.Stop(); }
11: }
12:
13: public class Program
14: {
15: public static void Main()
16: {
17: HostFactory.Run(x => //1
18: {
19: x.Service<TownCrier>(s => //2
20: {
21: s.ConstructUsing(name=> new TownCrier()); //3
22: s.WhenStarted(tc => tc.Start()); //4
23: s.WhenStopped(tc => tc.Stop()); //5
24: });
25: x.RunAsLocalSystem(); //6
26:
27: x.SetDescription("Sample Topshelf Host"); //7
28: x.SetDisplayName("Stuff"); //8
29: x.SetServiceName("stuff"); //9
30: }); //10
31: }
32: }
Topshelf 甚至有不错的 Log4net 和 NLog 集成。不管怎么说,通过一个免费的Express SKU for Desktop,它是那种强大的、 非常有用而有趣的开放源码库。我并不直接参与作决定,但我 (和其他很多、 很多人) 内外继续倡导平衡。在这种情况下,我很高兴看到作出推出此SKU的决定,我希望你们都觉得它是有用的,无论你是致力于开放源码还是教学方面。
在 Visual Studio 博客上有更多Visual Studio Express 2012 for Windows Desktop的详细信息,该团队正在查看评论。