WCP 兼容性测试之 Visual Studio 11 beta——更具吸引力的开发者天堂!
本帖最后由 lyf1428 于 2012-3-3 16:36 编辑首先说声抱歉,由于时间关系,基于08、10版开发的VC++、C#、DirectX项目能否正常迁移到11,未来得及做进一步测试,关于“向下兼容性”话题,腾出时间一定补上。这次写的内容,仅仅是针对打算将程序开发工作转移到Win8下,却对新系统、新平台心存顾虑的开发者们,希望这个帖子,能让你吃颗定心丸。
测试平台是挂载VHD的真机运行,而非之前的VM。
开发类文章,错误在所难免,望各位前辈随时斧正,我会在第一时间及时更正,谢谢。
0.运行时库(Runtime lib)
Win8对运行时库的基本需求如下:
(1)Win8下安装.NET Framework,无须考虑1.0及2.0版本,Windows会在你运行那些“需要.NET Framework支持”的程序时自动建议你安装3.5完整版(包含2.0和3.0),弹出的建议窗口非常人性化,直接在窗口内即可下载。
(2)关于VC运行时库,很遗憾,VC++ 2005 Redistributable Package无法安装在Win8系统上,从这个现象来推断,Win8很可能对一系列基于05开发的程序存在兼容性问题,甚至连整个Visual Studio 2005都抛弃。对于08、10的运行时库(包含x86、x64),完美支持。
1.Visual Studio 11 beta——安装篇
消费者预览版不包含VS11,微软官网下载即可(安装文件及语言包),如下图所示:
data/attachment/album/201203/03/0155305g5kwyg7i7gaoviz.png
这是VS11旗舰版的安装截图
data/attachment/album/201203/03/015530fthuyccbtzufhkpp.png
毫无压力的Successful:)
data/attachment/album/201203/03/015531kmhbazamh2ii1m50.png
再安装简体中文语言包,这是在线安装包,安装过程中需下载704MB的数据。
data/attachment/album/201203/03/015531fohiue0uj68aurox.png
只要网速快,安装过程基本不耽误时间。
data/attachment/album/201203/03/015531zzdy0q0dfoeipsss.png
测试后发现,这个语言包的本土化工作并不完善,VS11中仍有大量英文。
data/attachment/album/201203/03/0155329e5xx5l5l593lzjh.png
无须重启,运行激动人心的VS11吧,闪屏UI很大气。
data/attachment/album/201203/03/021644qcg6p6fyiobl83qg.png
首次启动询问环境配置是老传统了,我选择的是VC++,稍等片刻便配置完成。
需要MSDN的话,helper里可以按需添加并下载,全部添加需要4GB+。
2.Visual Studio 11——Metro篇
Win8最大的变化之一就是Metro,利用VS11,可以轻松开发Metro程序,新建工程的UI较以往更具人性化,如下图:
data/attachment/album/201203/03/022221shz35q2s5uysz55c.png
可以看出,Metro应用程序可大体分为拆分型、网格型、基于DirectX型等几大类。
data/attachment/album/201203/03/022222by7bw7f08l9d3bgd.png
在Win8消费者预览版中开发Metro程序,需要获得微软的“开发人员许可证”。
data/attachment/album/201203/03/022223gcg05giscbgl5uv9.png
此外,还要登陆你的Live账户。
data/attachment/album/201203/03/023537p9ylvqqjokhh0lw6.png
开始写程序吧,Metro——其实你并不陌生。
能看出VS11在代码书写上较之前的版本做了很多人性化改进,到处“.get”“.set”方式非常方便,就连#include之后打个尖括号都会弹出你可能需要调用的头文件。
data/attachment/album/201203/03/023540v1o534szh7p5o5ua.png
编译并运行,属于你的Metro便出现在“开始屏幕”上,是不是很兴奋呢:)
3.Visual Studio 11——DirectX SDK安装篇
在Win8下开发游戏,无须感到陌生,如果你已习惯在XP或Win7下开发。
data/attachment/album/201203/03/0246344eykybuakksqsa3h.png
首先,需要安装DirectX SDK,安装哪个版本视需要而定吧,我装的是DX11的SDK。
data/attachment/album/201203/03/024634qsqtt5si02dda0q2.png
这里出现个小故障,安装向导报错(错误代码S1023),可明明我已经关闭了所有程序:(
重启后重新安装反复试多少次还是报错,这显然是Win8的兼容性问题了。
别担心,点“完成”就行了,看看上面给大家看的那个“开始屏幕”截图,DXSDK的东西不都在呢么。
data/attachment/album/201203/03/02551661650xm1r8bm3n0n.png
点开DXSDK的控制面板,实际测试了几个功能,没有任何问题。
data/attachment/album/201203/03/025517j2ezi2p4jjueuoxn.png
DirectX Sample Browser 也正常,没有丝毫故障。
data/attachment/album/201203/03/02552981j4sktq4n2hvsqn.png
DX11粒子系统一如既往的绚丽,这是64位版的。
data/attachment/album/201203/03/025544brmbf4as4cf04zr6.png
这是DX10的范例,也没有故障存在。
data/attachment/album/201203/03/025600ew72ertxqt7e8277.png
HDR被应用在了越来越多的游戏特效中……
统统都没问题,这下放心了吧。
3.Visual Studio 11——DirectX 编写篇
对于sln迁移问题,VS11提供的迁移报告更加直观、详细,你所需要知道的信息逐一列出,见下图:
data/attachment/album/201203/03/03110435ai2ayzgf3qafqi.png
我迁移了一个以前写的完全无错的小程序,居然抛出五个警告。
通过内容很容易看出,Win8下开发程序,你需要学点儿新东西了:(
data/attachment/album/201203/03/031106mctcqsqo9whkjk80.png
先从项目的属性页看起吧(语言包在这里完全没起作用,呵呵)。
data/attachment/album/201203/03/032012yqy1ru38oaneruu1.png
关于VC++目录设置问题仍然被“否决”,沿袭VS10的霸道改变,看来指望回到从前是不可能了,呵呵。
Include在VC++ Directories中设置,注意顺序别搞错,这里我没有从“父级”继承,勾选的话,项目会报错(视项目而定)。如果你写的程序不停报错,看看我的设置方法,兴许会对你有帮助。
data/attachment/album/201203/03/032013c9wqaw2jayrljw0q.png
这个是Lib目录的设置方法,“继承父级”被勾选。其中的DX9 SDK是被我阉割过的修改版,只为老项目的兼容性准备而已。
data/attachment/album/201203/03/032017530yleek85s78s5y.png
清理后重新编译,是不是很嗨:)
总结:俗话讲“活到老学到老”,VS11抛弃了不少老技术,以此为代价放弃的程序兼容性只为更突出Win8的新特点,这显然是微软的强制性策略。尽管我们仍然可以固守VC6下开发MFC,但新知识等价于新机遇,您说呢。
后续还会进行Win8下对于Java、J2ME的兼容性测试,感兴趣的朋友敬请关注——“远景Windows8 开发者论坛”板块。
安装界面太棒了,不知道内存占用有没有优化 garybeta 发表于 2012-3-3 23:04 static/image/common/back.gif
安装界面太棒了,不知道内存占用有没有优化
空载项目时,内存占用低于之前的版本,打开VS的速度也比10版快,但项目加载后,进行编译操作时内存和CPU占用都不算低。 不错,我也下载试试
多谢楼主分享 感谢分享。感谢分享。
页:
[1]