自Visual C++ 5.0 6.0 以来一直遭人诟病的是什么? 过于简单的界面控件!
作为一个以Visual C++ 作为开发工具的程序员,遇到最郁闷的事情是什么? 开发一个具有漂亮界面的程序!!
Visual C++ 不是真正意义上的RAD(Rapidly Application Development)工具的主要原因是什么? 还是因为没有丰富的界面控件!!!
无数的Visual C++程序员为了那几个单调、简单Visual C++的控件苦恼着;而无数的Visual C++程序员由因为这个界面问题而大发其财。BCG Library、Magic Skin 这些专门为解决程序界面问题的库顺势而生。想必绝大多数用Visual C++写成的程序在商业化之前都会经过这些界面库的修饰。使用标准的MFC,想给菜单项加个图标都得通过自己派生一个类来做的情况下,你还指望自己能包揽程序的界面开发么?说老实话,measure这个单词就是那时候记住的。(MeasureItem 和 DrawItem 这两个可重载的函数是MFC给程序员预留的扩展界面的接口。)
自Visual C++ 6.0 以后,一直强调用户体验的Microsoft 也坐不住了。Visual Studio 2002 、2003的平面风格,给大家耳目一新的感觉,引领了时代潮流。而后的 Office 2003 界面一时间也是独领风骚。可是这些界面库都是MS自己留着用,从没想到拿出来。终于,终于在Visual Studio 2005 里面,.NET 程序员可以毫不费力的使用Office 2003 风格的界面控件了。TextBox控件也衍生出了很多小弟弟,限制某些字符的输入,也不用去响应TextChanged、KeyDown等事件了。但是Visual C++程序员肯定是再一次的失望了。在这几个版本的Visual Studio 中我没有看到MFC的本质的提升(添加CImage 类不能算是大幅度改进。其实对于图像操作,VC程序员们早就自力更生自己解决了。)
2008年01月07日,MS总算是没有忘记这些使用Visual C++的老朋友。推出了 Visual C++ Feature Pack Beta 下载。这次的Feature Pack 是专门针对VC 库的一个扩充。扩充分为两方面,一方面是MFC 的界面控件库;另一方面是对ISO C++ Standard 2003 标准的扩充。
部署:
部署这个东东可是有点不容易哦!部署这个东东首先需要的是耐心,其次还是耐心,最后给自己找本书看吧,不然你呆呆的盯着电脑一下午可能会疯掉。
首先需要到微软的下载中心 下载 Visual C++ Feature Pack Beta 下载这个303M的大家伙一定得挑个黄道吉日,沐浴净身,!@#¥%……
而后,你需要在机器上安装了英文版的Visual Studio 2008。别的语种Feature Pack不支持,看样子也装不上。2005? Visual C++ 开发组的某个人在Blog上说可以(引用原文* Older versions of VC (e.g. VC8).),可是下载中心上没这么说。自己看着办吧。 VS_Setup.exe 运行以后生成那个安装脚本的时间,相比大家心里有数吧?大家应该在安装 VS2005 的时候就领教过了。
接着,接着就该安装这个Feature Pack 了吧?错!你以为安装了Visual Studio 2008 就没事儿啦?一定要完全安装才可以!完全安装VS2008哦!就连SQL Sever 2005 Express 和 水晶报表的基本组件也不能少! 偶就是吃了这个亏,结果导致Feature Pack 安装到一半的时候出现错误回滚。错误如下:
Returning IDOK. INSTALLMESSAGE_ERROR [Error [1].An installation package for the product [2] cannot be found. Try the installation again using a valid copy of the installation package '[3]'.: 1706Microsoft Visual Studio Team System 2008 Team Suite - ENU]
[1/15/2008, 7:38:27] (HotIron::CMspExternalUiHandler::UiHandler) Returning IDOK. INSTALLMESSAGE_ACTIONSTART [Action 15:38:27: Rollback. Rolling back action:]
[1/15/2008, 7:39:12] (HotIron::MspInstallerT > > > >::PerformMsiOperation>Patch (VS90-VCFeaturePack-Beta-KB945273-x86x64-ENU.msp) install failed on product (Microsoft Visual Studio Team System 2008 Team Suite - ENU). Msi Log: Visual C++ 2008 Beta Feature Pack - KB945273_20080115_073311988-Msi0.txt
[1/15/2008, 7:39:12] (HotIron::MspInstallerT > > > >::PerformMsiOperation>MsiApplyMultiplePatches returned 0x643