转贴:VFP永不过时(3)
Install Shield Express For Visual FoxPro
Install Shield 是主流的安装程序制作软件,在Visual FoxPro 7 里微软就用 Install Shield Express For Visual FoxPro 限制功能版代替了原先的安装向导。更可贵的是,这个版本的Install Shield提供了中文语言包,也就是说可以生成中文界面的安装程序了。有了Install Shield ,我们就能做出最合乎潮流的安装程序。
新特性还有不少,您就自己看吧!还可以参看笔者撰写的《Visual FoxPro 7漫谈》一文。
软件的升级对我们用户是否有好处,主要是看他为您解决了多少难题、减轻了多少痛苦。Visual FoxPro 7对于高级用户可能更有吸引力,当然普通用户也一定会对它的超级开发环境有兴趣。
Visual FoxPro 7 SP1
2002年1月16日,微软发布了Visual FoxPro 7的SP1。这是一个彻底的补丁包——几乎没有推出任何新特性。
加装SP1能够改善Visual FoxPro 7对XML的支持,根据笔者测试,再不安装SP1的时候,XMLTOCURSOR()函数无法正确解析中文字符,而安装了SP1以后,这个问题就解决了!
我们的 Visual FoxPro 8
当我们还在讨论Visual FoxPro 7的时候,Visual FoxPro 8已经像我们走来了!
Visual FoxPro 8的产品代号是"Toledo" ,是有FoxPro社区选出来的。
已经看到的Visual FoxPro 8 的新特性
2001年9月初,在美国举行的“VFP DevCon 2001” 会议中,微软Fox小组成员召集了名为“Visual FoxPro 7.0 and Beyond”的主题演讲,Calvin Hsia 为到会的开发人员演示了几个已经完成的Visual FoxPro 8的新特性,虽然都是些不大的改进。笔者个人觉得2003年Visual FoxPro 8将正式发行,但至于那是他叫不叫Visual FoxPro 8我就不知道了,也许微软会为它改个名字……
支持自增长字段。
用一个属性实现,表格控件当前行的突出色彩现实,并且在表格失去光标时,依然高亮度显示当前行。
页框控件的得页标头支持上、下、左、右四个方位的放置。
控件的ToolTip支持多行显示。
所有控件支持Windows XP的界面风格。
微软对Visual FoxPro 8的定位
在FoxPro Advisor杂志里,有一篇名为《Memo from Microsoft》 的文章,登载了微软Visual FoxPro 产品经理 Ken Levy 对2002年 Visual FoxPro 发展的计划,其中专门提到了Visual FoxPro 8 的产品定位,原文是:
The main top-down goals for Toledo are to provide a better rich client, improve distributed Web client features, improve developer productivity, and increase discoverability for ease of use. You can see that the product direction focuses on features VFP developers have requested.
Visual FoxPro 8 将在客户端开发上做重大的改进、加强,这与当年微软对 Visual FoxPro 5、6 的定位截然不同——强调Visual FoxPro 在Visual Studio中的作用,强调Visual FoxPro开发中间层应用、COM组件。现在Visual FoxPro 离开了Visual Studio,产品重新定位,顺应开发者的需求,提出了 Rich Client(胖客户端)定位!
还有就是Visual FoxPro 8可能可以开发Web Form了,也就是所谓的 distributed Web client features。
Visual FoxPro 8 不会是.Net语言
Ken Levy 还表示,Visual FoxPro 8将坚持现有的体系构架,而不会运行在.NET common language runtime (CLR) engine 上,成为.Net语言。
我对Visual FoxPro 8 的期望
以下只是笔者一家之言。
远程数据访问
Fox历史上的每一次重要升级都与数据引擎有关,比如2.0时加入了内置的SQL语句和Rushmore技术;3.0时提出了完整的数据库概念,加入了远程数据处理的技术;7.0推出了数据库事件的概念。笔者以为,Visual FoxPro 8可能在远程数据的处理上有改进,我们知道现在的Visual FoxPro是通过ODBC对远程数据实现访问的,ADO主要使用OLE DB来访问远程数据,PB这样的软件更是有底层通道访问各种主流数据库;最新的ADO.NET中,微软更增加了对SQL Server 7.0及2000的直接(底层)访问,当然对其它数据库仍然采用OLE DB来访问。现在我们在Visual FoxPro中,要想通过OLE-DB访问远程数据必须使用ADO组件,但从实际应用来看ADO并非是Fox访问远程数据的主流方法,所以Visual FoxPro 8 应该会在访问远程数据方面提出更加具备效率的方法:或是对SQL Server的底层通道,或是使用OLE DB连接到远程数据……(哈哈,这时我去年写的,今年已经从微软得到证实:Fox 小组正在改进Visual FoxPro与SQL Server的通讯。看来,我的感觉蛮准的!)
无论访问怎么通道变化,对用户是感觉不到的,就像现在用户感觉不到我正在通过ODBC连接SQL Server的数据一样,只是效果更好。 (注:ODBC仍然是绝对主流、稳定的远程数据访问方式,只是速度略微慢于OLE DB;但它的兼容性绝对好于OLE DB下的ADO。所以未来的几年中ODBC仍然是值得信赖的远程数据访问的解决方案,特别是Visual FoxPro用户)。
当然,随着Fox用户越来越多的使用SQL Server作为后台数据库,Visual FoxPro 8 会在加强开发环境,例如:数据字典,用户可以方便的查看、维护数据源的表、视图、存储过程、触发器等对象,以提高开发效率。
报表工具
Visual FoxPro 8将会对报表工具进行大幅度的改进,首先是将报表最为一个对象处理,是报表变得很容易访问、控制;再就是提升报表的性能,例如多细节带区报表……;报表预览更自由,预览窗口将不再是模式窗口,由于窗口可以是任意指定的表单……;报表显示的数据可以与报表一起保存,这样报表就可以作为一份历史文档……
当然,微软也有可能将Crystal Report内置到Visual FoxPro里去,但我坚信:Visual FoxPro 8一定会在报表问题上给我们一个答复!
调用API更方便
我觉得直接调用API不是最佳的编程方法,但有时没有办法,只得调用。Visual FoxPro 8会支持“结构”这样的数据类型,可视控件都会带有句柄属性,这样就可以在Visual FoxPro中简便的使用API的各项功能,不像现在明明是很常见的API调用,在Visual FoxPro中却很麻烦……
界面的改进
我直言不讳:Visual FoxPro的界面效果简直是微软的耻辱!如果Visual FoxPro 8在这方面会为我们带来一些清新空气的话,这里有两种可能:我想微软会在现有的基础上升级整个界面以及内置的可视化控件,使他们符合Window的发展潮流,更规范、更流行;也可能Visual FoxPro 8将加入.Net系统,继承那个公共运行库提供的美好的界面。笔者以为:如果微软准备改善Visual FoxPro难看的界面,采取第一种方案的可能更大。(哈哈,我有猜得差不多!)
以上的猜想(更是美好的愿望)在加上编译加密的愿望可能是所有用户对微软的期望,就让我们看看,微软会为我们带来什么吧!