# Monday, June 15, 2009

    本人对SNS类系统感兴趣是从Facebook开始的,虽然国内现在有了校内网、开心网等,但是个人不太喜欢里面的风气和风格,所以还是主要上上Facebook。用电脑上Facebook,还倒是很方便的,而且自己也安装了个小桌面客户端程序Fosimo(虽然感觉还是有点山寨,但还是在一定程度上提供了方便的)。最近自己的手机升级到了WM6.5系统,安装了不少新东西,突发奇想是否可以在手机上安装个Facebook的客户端呢?于是Bing之,结果在微软的官方Mobile站上找到了一款“Facebook for your Windows Mobile 6 phone”,于是下载并试用之,还是很好的,速度也很快界面也漂亮,嘿嘿……就是它了。

    在这里给朋友也推荐一下,请到http://www.microsoft.com/windowsmobile/en-us/downloads/facebook.mspx页面上点击Download Facebook for Windows Mobile 6下载

     目前的主要功能有:

  • 向您好友列表中的任何人发送信息。
  • 在您的手机上拍摄图片和视频,然后再将他们上传到Facebook上。
  • 给好友列表中的朋友拨打电话。
  • 在任何时间任何地点管理您的个人资料。

Facebook screenshot Facebook screenshot

Facebook screenshot Facebook screenshot

posted on Monday, June 15, 2009 5:30:00 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Tuesday, June 09, 2009

在给客户解决一个小的技术问题时,发现一些技术人员对SQL2005的T-SQL还有些东西是不太熟悉的,这次我就通过与SQL2000对比着来说一下SQL2005的TOP子句吧。

首先说一下大家熟悉的SELECT语句。

    SQL2000中我们主要类似这样写:SELECT TOP 10 * FROM [News] ORDER BY [Id] DESC。这样我就能获取News表按Id列倒序的前10条记录。那么一个小问题就来了,我们知道SQL2000的TOP后面只能跟常量的,不能跟变量的,如果我们把这个语句放在一个存储过程中,而由于业务原因一些地方需要取出同样条件的10条有些20条还有57条……,那么我们怎么办呢?很多人说“简单啊,存储过中声明一个 @Top AS INT 的参数,然后先写一行SET ROWCOUNT @Top;然后写一行SELECT * FROM [News] ORDER BY [Id] DESC; 就行了。对了,最好在后面紧接着加上SET ROWCOUNT 0; 以避免影响后面的查询语句”。嗯这个回答在SQL2000是比较对的,起码比回答重新组合SQL语句的要好一些,尤其最好不要忘记那个SET ROWCOUNT 0; 但是我们看到这种方式在实际应用中,体验是不好的,一旦语句复杂到一定程度时,SET ROWCOUNT前后影响可能会让SQL编写人员撞墙。ok,那么我们在SQL2005中该如何处理呢?
    SQL2005中SELECT语句的TOP则方便多了,因为TOP支持使用任意的独立表达式,而不仅仅是常量。所以我们上面的同样问题可以简化为:SELECT TOP (@Top) * FROM [News] ORDER BY [Id] DESC。人性化多了,而且语句表达的意思很明确,不会像使用SET ROWCOUNT那样让人郁闷不已。

再说一下INSERT、UPDATE和DELETE等修改语句吧。

    对于这三种操作我们似乎依然可以使用SET ROWCOUNT来处理,但是我们知道这种方式的体验之差,对复杂语句尤甚。而且我们知道“对于在远程表和本地及远程分区视图上执行的 INSERT、UPDATE 和 DELETE 语句,将忽略 SET ROWCOUNT 选项设置”,也就是说在远程查询时这个东西就不管用了。我们还在SQL2008的联机丛书中还发现这样一段重要提示
在 SQL Server 的下一个版本中,使用 SET ROWCOUNT 将不会影响 DELETE、INSERT 和 UPDATE 语句。请不要在新的开发工作中将 SET ROWCOUNT 与 DELETE、INSERT 和 UPDATE 语句一起使用,并应准备修改当前使用它的应用程序。另外,对于当前使用 SET ROWCOUNT 的 DELETE、INSERT 和 UPDATE 语句,建议您使用 TOP 语法重写它们。
    正如上述提示中诉说的,我们应该选择更灵活、更人性化,而且还能在未来升级到新版本SQL数据库时减少麻烦的TOP子句。三种例句如下:
INSERT TOP(100) INTO [News] SELECT [Id],[Title],[Author] from [OldNews];
UPDATE TOP(500) [News] SET [Author] = N'qihangnet' WHERE Id >2009;
DELETE TOP(100) FROM [News];

值得注意的是上述这三种修改数据表的语句中,我们均无法直接使用ORDER BY附加排序条件,所以上述三种语句带有一定的随机性,尤其是UPDATE和DELETE语句。当然这种随机性有其两面性,优点是比如在按量分配工作的业务中,可以很方便的使用UPDATE进行随机性修改一定量的数据;缺点是当我们想通过排序控制一定量的数据时就不好了。那么真对于这种缺点我们是否就没有办法了呢?其实在SQL2005中,已经提供了可以轻松解决这个问题的方法,那就是利用WITH语句。具体方法在我们稍后的讨论WITH语句的博客文章中进行说明,并通过几个例子来详细说明一下WITH的妙用。

posted on Tuesday, June 09, 2009 1:05:00 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Friday, May 15, 2009

microsoft_.net_and_sap      《Microsoft .NET and SAP》这本书是由微软出版社(Microsoft Press)在2009年最新出版发行的开发类技术书籍(ISBN: 9780735625686),共计480页。作者是Juergen Daiberl, Steve Fox, Scott Adams和Thomas Reimer。

      本书主要告诉我们.NET开发人员如何通过已经熟悉的工具和技术(Microsoft Office、Microsoft Office SharePoint Server、Microsoft BizTalk Server、Microsoft Visual Studio……)来整合和定制SAP应用。

      本书一开始简介了微软和SAP及其历史概况;然后讨论了整合技术方案,并提供里例子,告诉您如何开发自己的解决方案。主要章节目录如下:

第1章 “SAP: Company Overview, Development Tools, and Microsoft .NET Interoperability(SAP公司简介,开发工具和Microsoft .NET互操作性)”。本章主要概述了SAP公司以及他的SAP产品和可用于SAP的开发工具,另外还简单介绍了两家公司之间的过往关系。

第2章 “Microsoft .NET Development Environment and Tools(微软.NET开发环境和工具)”。本章主要介绍了由微软提供的相关开发环境,如 Microsoft Visual Studio,Microsoft Visual Studio Tools for Office和Microsoft BizTalk Server等。

第3章 “Connectivity Between Microsoft .NET and SAP(Microsoft .NET和SAP之间的连通性)”。本章涵盖了微软和SAP的基本整合技术,例如Microsoft .Net的SAP连接器、Web Service整合、NetWeaer BI的.Net Data Provider、使用SAP的Enterprise Services Explorer整合Microsoft .NET与SAP Enterprise Services……

第4章 “Microsoft Business Intelligence(微软商业智能)”。本章中介绍了可用于SAP和微软商业智能解决方案的各种整合方案和技术内容。

第5章 “Microsoft Office SharePoint Server: UI Integration(Microsoft SharePoint Server:用户界面集成)”。将SAP用户界面整合到SharePoint Server中是本章的重点内容。您可以了解到:如何将SAP NetWeaver门户的一个iView显示在Microsoft Office SharePoint Server的门户上,以及如何将BSP(Business Server Page)应用和Web Dynpro应用显示在Microsoft Office SharePoint Server的门户网站上。

第6章 “SharePoint Business Data Catalog and SAP(SharePoint业务数据目录与SAP)”。本章介绍了Microsoft SharePoint Server 2007中的业务数据目录,并告诉您如何使用业务数据目录和SAP来显示和搜索SAP内容。

第7章 “Office Business Applications(Office商务应用)”。通过介绍2005年最知名的Office商务应用案例介绍微软和SAP的产品整合技术。

第8章 “Custom Development(定制开发)”。本站涉及了一些典型的整合案例,如:使用Microsoft InfoPath和Microsoft .Net的门户开发套件把Microsoft Office Communication Server和SAP NetWeaver门户整合。

第9章 “Identity and Security Management(身份认证和安全管理)”。本章介绍了Microsoft/SAP的身份管理,并讲解了实现Microsoft和SAP之间单点登录的各种方式方法。

 

    本书个人非常看好,希望在国内早早出现中文版本,造福处于水深火热的商业应用定制开发的中国IT工作者们,:)

posted on Friday, May 15, 2009 1:40:00 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Friday, May 01, 2009

Windows 7 RC在5月5日即将正式向大众开放下载测试使用,而微软Connect用户则在4月30日就可以下载了,且参与Win7中文测试项目的Connect用户还可以下载到Windows 7 RC的中文x86版本。当然作为RC中新提供的一个振奋人心的功能组件Windows XP mode,也可以下载到了。关于Windows 7自身的功能介绍已经有太多了,这里就不再叙述了。今天在这里给大家通过图文的方式介绍一下Windows 7 RC的Windows XP Mode。

首先,说明一下我的系统环境。硬件是ThinkPad R400的笔记本,其中CPU是P8600,内存4G DDR3;操作系统是Windows 7 RC X64位的旗舰版 Build 7100,英文系统安装了简体中文语言包。

在下载Windows XP Mode相关的组件程序之前,建议大家先确认一下自己的CPU和主板是否均支持VT技术(通过SecurAble工具检测),并且确认BIOS中的CPU设置中将VT技术的项设置为Enable。

在我的机器上运行SecurAble工具,得到了如下结果:

这里我的参数中第二项和第三项均为Yes,说明完全支持Windows XP Mode,没有问题。如果您的结果中第二项和第三项均为No,那么您就不必徒劳下载Windows XP Mode相关的组件程序了,因为很遗憾您的机器不支持该模式;如果第二项为Yes,第三项为Locked ON则表示支持,而为Locked Off则表示BIOS关闭了虚拟化技术,那么这种情况下就保不齐是CPU不支持造成的BIOS禁用该功能了,如果确认CPU支持,考虑升级一下BIOS版本再看看。

确认上述项目后,我在下载了相关的组件程序,由于是64位系统所以下载的是64位版本。

其中Windows6.1-KB958559为Virtual PC For Windows 7组件,先安装它,然后按照要求重新启动系统,在开始菜单就有了Windows Virtual PC项。这时候如果您的机器上有现成的VPC2007(SP1)的虚拟机,可以直接运行之,系统会自动升级为新版本的虚拟机配置。需要注意的是,这里可能会碰上一个小麻烦:可能运行虚拟机时,会报错误说无法执行虚拟机,因为BIOS为启用虚拟化技术,但你很确认BIOS已经启用了,那么原因是什么呢?这里大家如果注意BIOS的说明就能了解了,提示中说您的电脑在设置完后断电再启动才能有效支持虚拟技术(VT)。也就是说你让系统自动重新启动是不行的,必须先将机器关闭并断电后再启动。

我们继续安装VirtualWindowsXP,根据上图的文件名可看出我这里下载的是64位中文版的,也就是说虚拟机将会预装一个中文版的XP With SP3的系统。我机器上运行VirtualWindowsXP_64_zh-cn.exe后,执行结果如下:



到此我们的Virtual Windows XP已经安装完成。

    接下来启动Virtual Windows XP,

接受条款后,点击下一步

这里的用户名User是虚拟XP系统的新用户,用户名在这里是不能修改的,设置好密码后,推荐大家选择记住凭据,这为我们以后正常使用虚拟机中的虚拟应用程序提供方便。

这里建议大家选择第一项,因为系统是微软免费赠送的,所以不用怕"黑屏事件"哦J。下一步后,会自动开始配置一系列内容



配置结束后,会自动启动虚拟的XP系统,如下图:

这时候我们查看一下Windows 7的开始菜单会发现出现如下图的结果:

点击虚拟机后,出现如下图的虚拟机列表,如果您还有其他虚拟机并运行过一次后,会自动加入到该列表目录中

当我们点击"Virtual Windows XP 应用程序"下的"Windows Catalog (Virtual Windows XP)"后,出现下列警告框,点击"关闭虚拟机"按钮,继续

虚拟机关闭后会出现下列提示窗口先

然后您的Windows 7里会启动一个IE6.0的窗口,并打开微软的Windows Catalog网站

查看一下该浏览器的版本号

再启动一个Windows 7的IE8对比一下效果

这时候我们可能会有个疑问:如何将其他的应用添加到Windows 7的开始菜单中以便使用呢?目前我们如下流程操作即可达到目的:
如下图,我们在开始菜单按钮上点击鼠标右键,出现一个快捷菜单

点击快捷菜单中的浏览(打开)所有用户,出现下图结果:

打开"程序目录"

在该目录创建一个快捷方式,比如说一个指向IE6的快捷方式,

在XP中关闭"程序"窗口,然后到Windows 7中查看开始菜单内容,会惊喜地发现IE6的快捷方式被自动添加到了"Virtual Windows XP 应用程序"节点下,

当然了其他的程序也可如此作为,达到我们期望的效果。——以后不用再安装第三方工具来测试我的Web页面在IE6下的效果了。

    关闭虚拟XP后,我们可以对XP的虚拟机进行配置,方法如下:在打开菜单中的点击"虚拟机",打开虚拟机列表,然后在"Virtual Windows XP"上点击鼠标右键,

点击"设置"菜单项,即打开了对"Virtual Windows XP"的配置窗口,而点击配置窗口中的"自动发布"后,我们看到自动发布功能的设置窗口,

"自动发布虚拟应用程序" 功能开启,才出现我们上面创建虚拟应用的快捷方式的结果。

    如果您仔细的话,会发现Virtual Windows XP在点击窗口上的关闭时,虚拟机会自动进入休眠状态,而不是关闭状态,这对下次启动虚拟机的速度有好处,但是如果您的虚拟机启动了大量应用,那么这将会给您的磁盘带来相对较大空间的浪费,要改变这个可以通过点击左侧的"关闭",进行配置。

如果该配置项选择的是"提示选择操作",那么每次关闭该虚拟机时,虚拟机会弹出窗口询问用户的选择。如果想设置为自动为关机,则每次选择关闭虚拟机时,系统会关闭虚拟机的所有应用后正常关机,但是这将会造成下次启用虚拟应用或虚拟机时,需要花额外几分钟的时间等待虚拟机的启动。所以具体如何设置,根据自己的实际需求而定吧。

posted on Friday, May 01, 2009 5:01:11 PM (China Standard Time, UTC+08:00)  #    Comments [0]
# Sunday, March 15, 2009

wcf book      春节之前就收到了这本MVP图书计划的书籍,由于春节前后项目工作非常繁忙,累了个够呛,所以书评一直没有跟上,实在感觉对不住老大,今天赶紧补上。这是一本纯英文的硬皮MCTS考试自学用书。由于该书籍面向读者的专向性,所以跟普通的技术书籍有些不太一样。内容是以课为单位编写的,且配有随书CD和VS2008专业版的90天试用版本(含MSDN库)。

    这本书既然是考试自学用书,那么它的细致就自不在话下了。几乎WCF的各个细节都有浅入深的进行介绍,有详尽的代码实例(VB和C#都有),还穿插着各种注意事项、知识点以及扩展内容。给人很贴心的感觉,因为很多东西是初学者所不能想到和接触到的,在书中给与提示和说明我认为是一件很好的手段。模拟考试软件的答案解释也是不错的,再次赞一下:D

    我对书中内容的序列化控制、WCF跟踪扩展与监控、数据安全以及用户认证等部分比较感兴趣。改天要再好好学习一下。

    这本书似乎目前尚未有中文版本(大概考试用书都这样子),但是依然建议大家自学阅读一下。照着实例代码多练习调试尽可能搞明白更多的细节,不要看答案对了就对了。尽可能把每个提醒提示的文字也都阅读一下,会受益匪浅的哦。

posted on Sunday, March 15, 2009 3:19:00 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Monday, December 08, 2008

    WinHEC即Windows Hardware Enginneering Conference(Windows硬件工程大会)。是微软公司从93年红红火火举办了10多年次的微软技术盛会之一,内容涵盖了硬件和软件双方面的内容,内容和阵容往往非常之牛。而WinHEC 2008 China是微软第一次正式在中国大陆举办,成为除了Tech.ED外的中国大陆又一微软技术盛会,很荣幸今年能够在北京参加这次盛会,甚为感动……

     我在2006年开始就开始关注微软的嵌入式开发相关的技术内容,对Windows Mobile、Windows CE等系统方面的开发利用也进行过一些研究和推广。我至今虽然尚未真正全面涉足这个领域,但对该领域的未来预期很看好,所以从未放弃学习和了解该领域的机会,不断提升自己在嵌入式开发方向的认知和技术水平。而今年WinHEC 2008 China的会议则是一个非常好的学习机会,更何况其中包含了我关注已久且甚是喜爱的Windows 7呢。

     WinHEC大会中我比较关注以下几种内容:

  1. Windows 7
    这个我已经关注很久了,6801 32bit版的已经使用有快一个月时间了,感觉还是非常不错的,因为是Pre_Beta版本的缘故,还存在一些瑕疵和功能的不完善。但稳定性比当年Vista在同期的表现要好多了,当然这跟Windows 7使用Vista核心技术有一定关系,但与微软技术人员的努力是有很大关系的。希望在下个版本,能给我们带来一些新的感动。关于Windows7的一些贴心之处,可以查看我前面写的一篇博客《准备迎接Windows7时代》。而在WinHEC 2008 China的开场演讲中我们还了解到了Windows 7在设备管理方面的改进,而大会上领取到的联想的2G优盘可以测试到这个功能,确实方便不少。下次我再补写一篇博客来介绍Windows 7的其他功能和改进。敬请关注哦
  2. Muti-Touch
    这个技术是值得期待和关注的。我们已经习惯了利用键盘和鼠标来操作电脑,但我们也发现很多不尽人意的方面,比如你要给客户讲解一个内容,你做的很好PPT效果或者图片效果,有时候使用鼠标和键盘很难表达我们真正的意图或者真正很酷的设计,使得客户并不非常认可我们;再比如我们的父母亲朋,很多人并不太会使用电脑,原因是看到键盘鼠标上的那么多“按钮”直接就快晕一边了——电脑不是按人的习惯来使用,而是按照电脑的习惯来让人使用!!我们应该让电脑理解我们的声音、动作、眼神乃至想法!ok,起码让我们能够用手像玩积木一样玩电脑吧,Muti-Touch技术是能够解决我们这需求的。而与这个技术相对比的技术,就是单点触摸技术,该技术的使用主要有两种:手机和Tablet PC。其中手机使用这个技术的已经很常见了,而对比下的Tablet PC市场表现并不怎么太好。个人认为市场不好的原因有二:性价比差,Tablet PC的配置目前并不是太高,但是价格却奇高,让人望而却步;触摸体验不理想,单点触摸的感觉跟用鼠标其实并没有太大的改进,给人的感觉就是在电脑的基础上添加个手写板而已。那么,从IPhone开始,我们似乎突然很惊讶,手机原来也可“这样”操作啊,那么电脑也应该可以吧。于是Muti-Touch技术成为各技术厂商的热门,微软作为计算技术的龙头企业,当然不甘落后于他人。像微软说的Muti-Touch技术不应该只是两点触摸,真正的Muti-Touch技术应该象我们的Surface这样:D。WinHEC 2008 China上我关注了多家厂商的多点触摸产品,发现台湾的一个厂商的产品还是很值得期待的,无论从反应速度还是从准确度上而言都是不错的,而且似乎成本也并不高,看来我们离Muti-Touch技术普及化不远了。微软的历史墙应用,也让我很是震惊,WPF+Muti-Touch的完美结合,而且有惯性操作哦! 很遗憾的一点是Demo的机器中,据说因为微软给的SDK原因,暂时只能演示两点的操作体验。
  3. .NET Micro Framework 3.0
    只有300k左右的完整嵌入式开发框架,让我们在开发嵌入式应用时不用再因为那么多不同硬件之间的区别造成众多烦恼了。我们把更多精力可以放在,功能业务上,而且可以使用C#或者VB.Net等多种.Net语言来编写嵌入式应用,确实很酷啊。而其中最酷的则是WPF的内嵌支持,虽然在嵌入式框架中主要是提供了WPF的API,而没有提供完整的设计器工具,但就目前而言已经给我们提供了很大方便了。作出功能良好,体验又酷的嵌入式应用,客户还会拒绝你吗?强烈关注这个东东:D
  4. Windows Home Server
    这个东东,关注有一段时间了。在数字家庭应用中可以表现出不少让人惬意的功能体验,我们可以在任何地方通过互联网来控制家里的电脑乃至冰箱、电饭锅等电器,多么让人激动啊。不过个人认为微软要普及这个东东的话,还需要进一步努力啊,当然也要包括各家电厂商的努力。希望大家一起努力为创造完美的数字家庭应用体验,而不懈奋斗。我有一个朋友在近期已经开始涉足智能家电的应用领域了,很为他高兴,抽时间向他多学学。有钱了,我也买一台Windows Home Server部署到家里,体验一下“科幻”的数字生活。
  5. Surface
    微软推出有一段时间了,据说销售的也不错呢。如果我有钱,我也想买一台回家。喝着浓香的咖啡或清淡的绿茶,在“茶几”上把玩着各种游戏或看一部大片,多么科幻的生活啊。我是个铁杆科幻迷,并希望不断地将现实版科幻应用部署到自己的周遭,当然前提还是那个啥——要有足够的钱啊。努力中……,嘿嘿
  6. Direx 11
    这个东东,我就不评论太多,只在一个展台上看到了这个技术的Demo,展台的工作人员并不是很专业的技术人员。所以没有从他那里了解到太多新内容。而DX11对GPU的支持,效果确实让人期待,不过我们这些开发人员的电脑显卡可不会太好,似乎很难研究这个东东啊。不过也关注一下,有机会也用它写个游戏玩玩?你有好主意吗?

   本次大会的会务感觉比今年Tech.ED要好一些,虽然一些环节的设计不是很尽如人意(比如光盘资料的发放,跟课程同步进行,很影响讲师的热情啊),希望下次会议的会务能够考虑的更细一些,别让拿钱参会的人感觉自己是来遭罪的哦,呵呵。大会中,用于体验Windows 7和上网的专门区域中,机器里存有完整的课件资料还是比较贴心的,课程相当一部分是英文的,如果没有中文课件支持,确实很难学好课程内容哦。

    每次参加微软的技术大会,我们都有一项必做的事情,就是跟其他的MVP朋友们聚聚聊聊,互相传递一下感情和新的技术讯息,或者就某个问题热烈的讨论一番,感觉也是非常之好啊。今年也不例外的,跟老桂、老葛、Cat Chen等人一起聊了不少,感受颇深,一些问题也受到了启发。

posted on Monday, December 08, 2008 5:48:00 AM (China Standard Time, UTC+08:00)  #    Comments [1]
# Tuesday, December 02, 2008

     已经安装Windows 7挺长时间了,一直想写篇博客来介绍Windows7的一些新特性,可忙于各种事情,一直没能精心写完这篇,今天在此补上。
   在本文撰写之前,已经有不少MVP和微软技术爱好者都已经试用并写了博客,进行一些内容的介绍,如范维肖同学和LanceZhang同学都已经贴了不少图片和文字说明,本文将不对上两篇文章的内容进行再叙述了,感兴趣的可到他们的博客上进行了解,这里重点说说几项个人比较喜欢的新特性。

  1. 放大镜功能的改善:
    magnifier在开始菜单中打开放大镜工具会出现下面的放大镜工具操作窗口,一个很简洁得窗口:
    magnifier_1 
    如果你持续一段时间不理它,它会变成下面的图标。
    magnifier_2 
    ok,来说重点。放大镜工具的最大改进是可全屏局部放大,当然放大后依然可以操作。这个恐怕是很多讲师所梦寐以求的功能了,当然我也不例外的为这个功能而激动,再不用为ZoomIt工具的放大后无法继续操作的功能而郁闷了,Windows7自带的放大镜可以解决我们的需求了,点击上面第一个图的“+”图标即可放大,而“-”图标则是缩小(最多缩到100%,因为这个叫做放大镜:D);其中第三个图标点击后,会出现传统的放大模式;第四个图标是用来在放大时暂时查看完整屏幕(100%)一会儿然后返回放大状态的。
    很显然,我们讲课时如果不听的点击这个放大工具条,会很郁闷,十分不方便,所以微软也很贴心的加入了快捷键:“Win”+“+”(放大)和“Win”+“-”(缩小)。当在未启动放大镜时,按其中的任意一组快捷键,都会启动放大镜工具。是不是很方便啊?再结合ZoomIt工具的功能,在做课程讲解和演示时,则如虎添翼,哈哈哈……

  2. 窗口在屏幕边缘的停靠动作:
    用过Linux桌面系统的人很多都知道一个功能,当你拖放窗口到屏幕的最上方时,当前的窗口会自动最大化,而相反把最大化的窗口向下拖放,则会自动还原为原来大小。Windows7也有这个很方便的功能了,当然也包括拖到屏幕的左(右)侧边缘时自动靠向该方向且占据半屏幕的空间显示,这个功能在写程序的时候蛮有用的。当然,如同上面的功能,微软也很贴心的通过Win键的组合键快捷调用相应的功能:“Win”+上(下、左、右)方向键,可自动调用全屏(还原/最小化、左停靠、右停靠)等功能。
    windows


  3. 挂接虚拟硬盘作为系统硬盘的支持:
    我们经常使用ISO外加虚拟光驱软件,来模拟使用光盘的镜像功能,但是虚拟机的VHD(虚拟硬盘)文件却一直无法类似的使用,我们很难将一个VHD文件虚拟成真机的一个硬盘,来模拟测试一些东西。而现在Windows7中已经给我们带来这样的功能。如下图,我们可在磁盘管理器中的行为菜单中找到相关的功能调用。
    vhd
    如同下图,我在一个剩余不足5G空间的分区中,创建了一个容量为100G的(动态大小)硬盘文件,并将其挂接在系统下,犹如一块真正的硬盘。
    vhd_1
    我们可以根据自己的需求对这个虚拟硬盘进行初始化、分区和格式化等操作,如图,我将一整块100G的虚拟硬盘分为一个区,而我的真正硬盘总共可就是80G的啊,哈哈哈,很好很强大。
    vhd_2
    不过可能是因为测试版本的原因,目前似乎对VPC创建和使用过的VHD文件支持不太好,有理由相信微软会在以后的版本中修复这个问题,不然这个功能将形同鸡肋了,老天保佑:D

  4. PowerShell V2版本和其图形化界面
    在Windows7中,系统自带了PowerShell的V2版本和对应的图形化界面工具,这样我们就不用再使用第三方的GUI工具来玩PowerShell了,而且这个界面还是很酷的哦:D,见下图
    PowerShell 

Ok,先介绍这些吧,明天赶往北京,参加WinHEC(微软硬件技术大会)2008,这可是WinHEC第一次来中国,带着美好的期望,准备去参会。回来后再为大家分享我的感受,:D

posted on Tuesday, December 02, 2008 2:56:14 AM (China Standard Time, UTC+08:00)  #    Comments [0]
# Thursday, November 13, 2008

CLR Via C# 2    随着人们对身边事物的不断认知和熟悉,我们逐渐开始需要追溯事情的根源,了解事物的本质。而软件开发人员水平不断提高,则同样会去研究技术表面下的实质,使得自己向一个更高的层面发展。.NET框架已经发展到3.5(SP1)的版本,4.0也正向我们款款走来。很多人感叹微软技术更新的过快,更不上框架和开发工具的版本更新速度。而个人认为,一个好的开发人员不会因为技术更新速度而受到太大影响,因为这些技术的本质没有太大改变,了解本质后学习新技术则是另外一种景象了。我想了解技术本质有两种比较可行的方法:读源代码(IL,汇编代码),读大师们的书。前者对技术人员自身的水平本身要求较高,也就是说需要有一定的底层技术积累才可以。所以对普通的技术人员要学习技术的本质最方便的途径就是读书了。当然了,读书呢,需要读好书,读不好的书不如不读!
    《CLR Via C#(Second Edition)》这本书,个人认为是一部非常不错的书,值得向大家推荐一下。本书的原作者是:Jeffrey Richter,他从1999年就开始为微软.NET Framework团队做顾问,经历了.NET的孕育、诞生和发展,可谓.Net方向最有发言权的顶级技术专家,而他写的书也应该是我们.NET技术方向的开发人员必读的书:D。本书的写作风格可谓出色,语言也通俗易懂,写出的例子也是很精妙,常常一针见血,文中适时的提醒一些读者容易忽略的问题,提点一些重要的技术信息。配合MSDN文档我们可以从本书较好的学习到:

  • 源代码如何转化为中间语言(IL)的,他们是如何存储、管理和执行的
  • 描述运行时可用的代码元数据及其用法
  • 数据的分类、组织和管理
  • 描述类的成员(字段、属性、方法等)
  • 异常处理和垃圾回收的原理
  • 反射
  • 多线程
  • ……

  该书让读者扎实的理解CLR底层概念、巩固技术基础,具备迅速而轻松编写出可靠、安全、高性能的托管代码,真正成为一个.Net高手而非编码工人。

  该书分五个部分共24章,个人推荐已经了解部分.NET底层知识的人,重点阅读第4部分(基本类型)和第5部分(CLR实用特性)。

  本书有中文版本《框架设计(第二版)》是清华大学出版社出版的,译者是:周靖和张杰良。翻译的还不错,但也有一些地方存在一些欠妥的地方,有时候一些原著的内容确实很难将原意用中文翻译好,但这里仍然希望国内的译者们再努力提高一下自身的专业技术水平和专业英文的翻译能力,期待下个版本能翻译的更好。当然了,翻译得虽然有这样那样一些细节的问题,但对普通的.NET方向开发人员来说,阅读中文版本也同样会获得很大帮助的。英文不好的朋友,可以购买翻译版本的读一下:D
posted on Thursday, November 13, 2008 5:59:01 PM (China Standard Time, UTC+08:00)  #    Comments [0]