发散性碎片(2008-12-29)

MSBuildExtensionPack

MSBuild 一直都是 .Net 下 Build 工具的不二选择,可怜开源社区的 NAnt 几乎已经被彻底遗忘。而 MSBuild 则在蓬勃的发展。

如果老兄你对持续集成 Very 的有兴趣的话,那么如果你不会 MSBuild 的话,我只能拍着你的肩膀说一声:老兄,你真的太老了;让来我们看看 MSBuild 的未来。

Visual Studio 中的众多项目都是基于 MSBuild 的构建,包括 CodeAnalysis,OfficeTools,ReportingServices,WebApplications 以及 Workflow 等等,有兴趣的同学完全可以翻开 C:Program FilesMSBuild 目录研读一番。

有一个例外,Visual C++ 项目在 VS2003、VS2005、VS2008 是基于自己的构建方式,但是这一情况在 VS2010 中将彻底改变为基于 MSBuild 的构建方式,同时 Visual C++ 项目的智能感知数据库也会基于 SQLCE,而非以前的 .ncb (这是什么格式,Structured storage ??)。

最后,Novell 的 Mono 项目也有一个 MSBuild 的克隆 - xbuild,好吧,我承认它是一个半成品。就目前来说,Mono 真的只是玩具,完全承担不起平台的重任 - 它实在太不稳定了~~

扯远了,我们来说正题,今日在网上闲逛,发现了一个新的关于 MSBuild 的扩展项目,之前我们有这样的扩展项目可以用:

如果你的团队很大的话,SDC 是不错的选择,因为它的 TFS 集成度很好,而 Community Tasks 则提供了一大堆功能给你用,无论是模板还是 XML 操作,或生成 AssemblyInfo.cs ,都是手到擒来。

而现在呢,我们有一个新的扩展 MSBuildExtensionPack,它更加强大(感觉像在看龙珠漫画似的,没有最强,只有更强),在这里我就厚脸皮的直接摘抄介绍过来哈:

The MSBuild Extension Pack 3.5.1.0 release provides a collection of over 230 MSBuild tasks.
A high level summary of what the tasks currently cover includes the following:

  • System Items: Certificates, COM+, Console, Date and Time, Drives, Environment Variables, Event Logs, Files and Folders, GAC, Network, Performance Counters, Registry, Services, Sound
  • Code: Assemblies, CAB Files, Code Signing, File Detokenisation, GUID’s, Mathematics, Strings, Threads, Xml, Zip Files
  • Applications: BizTalk 2006, Email, IIS6, IIS7, MSBuild, SourceSafe, SQL Server 2005, SQL Server 2008, StyleCop, Team Foundation Server, Visual Basic 6, WMI

这样众多的 Task 如果配合 Windows PowerShell 以及 CC.Net,只要你的团队或者 PM 不是烂的过分,在这些工具的帮助下,效率肯定直线上升,您的项目奖金也唾手可得啦。:)

MessageBox

通常看到 MessageBox 弹出时,如果需要其中的信息,一般用手打或者用 Spy++  取其中的文字。结果现在才发现,MessageBox 支持 Ctrl+C,即复制功能,直接复制文本到剪切板。

是我孤陋寡闻,还是地球人都不知道?

Subversion 的 log.c 错误

使用 svnserve 作为 Subversion service 时,查看日志时可能会出现 ..libsvn_reposlog.c 这样的错误,这时只要在你的 authz 配置中加上 * = r 即可。

参考 :http://www.nabble.com/Show-Log-Error-td19145692.html

View Comments