教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> VB >> 优化技术 >> VB中OLE调用的优化方法 RSS订阅
VB中OLE调用的优化方法
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   
VB5.0中大量使用OLE,对象的正确使用对于开发一个高效的应用程序是非常关键的。因此,笔者想谈一谈OLE调用的优化。
一、利用WITH语句减少重复调用。
为了设置单个对象的多个特性,可以使用WITH END WITH减少激活引用链设置特性的次数,在这种情况下,甚至不需要定义对象类型的临时对象。例如:DBEngine.WorkSpace(0).Databases(0).
RecordSet.Fields(0).Name="jx"
DBEngine.WorkSpace(0).Databases(0).RecordSet.Fields(0).Height="1.75"
可以这样赋值:WITH DBEngine.WorkSpace(0).Databases(0)
.RecordSet.Fields(0).Name="jx"
.Height="1.75"
END WITH
很明显,减少了执行赋值所必须做的OLE对象查询的次数。
二、使用可以提供的最特定的对象。
在VB中访问任何对象的模型通常要求重复使用OBJECT.PROPERTY语句,那么这个引用链将变得很长。
DBEngine.WorkSpace(0).Databases(0).RecordSet.Fields(0).Name
在上面这个序列中每个点代表VB为了访问下一个元素要求的OLE查找。如果将这样一条语句放到循环中,会产生大量不必要的查找:
例如For I%=0 TO DBEngine.WorkSpace(0).Databases(0).R
ecordSet.Field.Count-1
Print DBEngine.WorkSpace(0).Databases(0).RecordSet.Fi
elds(I%).Name
Next
如果通过使用可用的最特定的对象类型,可以大大减少同一个
循环的开销。程序变换如下:
DIM X AS Fields
DIM Y AS Field
SET X=DBEngine.WorkSpace(0).Databases(0).RecordSet.Fi
elds(0)
FOR EACH Y IN X
Print F.Name
Next
三、最小化跨进程OLE调用。
OLE Automation对程序内的对象的调用总是比跨进程调用要快,如果处理可以在一个程序内完成,就会比调用另一个应用程序快。如果进行跨进程OLE Automation,一个硬输入的(DIM X AS SPECIFICTYPE)而不是“AS OBJECT”的对象会大大减少开销,因为只需一个跨进程调用。
四、使用进程内而不是进程外的OLE服务器。进程外OLE服务器(使用MAKE EXE建立的OLE服务器)比进程内OLE服务器(使用MAKE DLL建立的OLE服务器)慢得多。

来源:十度教育
作者:
关键字:VB中OLE调用,优化方法
发表日期:2006-5-18 13:31:49

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:   下一篇:静态变量慢于动态变量


2008-11-23 20:32:58
本文的相类似文章
  • 分解查询的优化方法全面分析
  • VB中OLE调用的优化方法
  • PHP开发程序加速运行探索之慢代码优化方法
  • 环境模型参数优化方法的比较
  • 智能建筑暖通空调系统优化方法研究
  • VB中OLE调用的优化方法
  • Unix的五条优化的技巧和及时的优化方法
  • 从编译到工具:几种Mysql的优化方法
  • .NET 2.0远程传输数据集的优化方法
  • 用ASP编写计数器的优化方法
  • 在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com