基于dde和ole的visual foxpro功能扩展

基于dde和ole的visual foxpro功能扩展

ID:12159797

大小:37.00 KB

页数:5页

时间:2018-07-15

基于dde和ole的visual foxpro功能扩展_第1页
基于dde和ole的visual foxpro功能扩展_第2页
基于dde和ole的visual foxpro功能扩展_第3页
基于dde和ole的visual foxpro功能扩展_第4页
基于dde和ole的visual foxpro功能扩展_第5页
资源描述:

《基于dde和ole的visual foxpro功能扩展》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于DDE和OLE的VisualFoxpro功能扩展孙修东(上海农林职业技术学院,上海松江:201600)摘要:DDE和OLE是MicrosoftWindows平台支持的两个内部通讯机制,其应用大大地扩展了VisualFoxpro的性能。本文通过对VisualFoxpro中DDE和OLE的讨论,提出了一种扩展VisualFoxpro功能的方法。关键词:VisualFoxpro;DDE;OLE;功能扩展1引言MicrosoftWindows平台支持在应用程序之间内部交换数据的机制:动态对象数据交换DDE(DynamicDataExcha

2、ng)和对象链接和嵌入OLE(ObjectLinkingandEmbedding)。这两种机制使得用户通过借用其它Windows应用程序的力量,可以扩大VisualFoxpro应用程序的能力,例如对文本、声音、图画和图表数据的处理。而且,随着Windows环境下具有DDE和OLE性能的应用软件的不断完善和丰富,用户几乎可以无限地增强VisualFoxpro的性能。2VisualFoxpro中的DDE和OLE2.1VisualFoxpro中的DDEVisualFoxpro的动态数据交换(DDE)提供了VisualFoxpro与Windo

3、ws的其它应用之间信息传送及信息共享的能力,DDE的一个应用甚至可以通过向其它应用发送命令及键盘操作的方法来管理其它应用。DDE服务的双方是Windows的两个应用,在DDE通讯开始时,指定两个应用的一方为DDE服务程序(service),另一方作为DDE的客户程序(client),即建立一种client/service结构,客户程序作为主动方,向服务程序发出请求;服务程序响应客户程序的请求,将完成工作的情况及工作的结果送回给客户程序。VisualFoxpro可以作为DDE的服务程序也可以作为DDE的客户程序。通讯双方数据交换内容的逻

4、辑集合称为通讯主题(topic),基于文本文件的DDE双方将文本文件名作为数据交换的主题。例如MicrosoftExcel将扩展名为.XLC或.XLS的文件作为主题,MicrosoftWord以扩展名为.DOC的文件作为主题。此外,大多数支持DDE的应用承认“System”5为共用主题,以在相互之间交换通用信息及发送命令。DDE数据交换过程中,服务程序一次向需求数据的客户程序传送数据的单位称为条款(itme),每个主题分为可参照的若干条款。不同应用的条款是各不相同的,例如Excel的交换条款是单元,即Excel电子表中的行列标志;Vi

5、sualFoxpro的交换条款可以是数据访问的记录号、文件名或SQL查询。动态数据交换有两种方式,一种称为同步交换方式,即客户程序发出数据交换请求以后,等待服务程序完成该请求,在得到服务程序的信息后才继续执行;另一种方式称为异步方式,客户程序发出数据请求以后不等待服务程序的应答,客户程序和服务程序都以各自独立的且不可预知的速度向前推进,在服务程序完成数据请求后送回一个信号,客户程序通过应答该信号进行相应处理。DDE的各种操作均通过函数进行。下面讨论VisualFoxpro作为客户程序方进行程序设计中常用的一些命令和函数:1)RUN[/

6、N[数值表达式]]<应用程序><应用程序参数>用于启动应用程序。2)DDEInitiate(<应用程序名>,<主题名>)用于建立与DDE服务程序的通道。标准的主题名为“System”,返回-1表示通道建立失败,返回非负整数作为通道号用于以后通信。3)DDETerminate(<通道号>)用于关闭DDE通道。4)DDERequest(<通道号>,<条款名>[,<数据格式>[,]])用于向服务程序申请数据条款。<数据格式>指定申请数据的格式,缺省格式为CF_TEXT,字段以制表符为界,记录以回车为界。缺省自定义函数UDF,则等待

7、时间由DDESetOption()决定,否则采用异步交换方式。5)DDEExecute(<通道号>,<命令串>[,<数据格式>[,]])用于申请服务程序执行一个命令。它可以使用户非交互式地引发服务程序的远程执行,间接地实现应用程序之间的相互编程。6)DDEPoke(<通道号>,<条款名>,<数据>[,<数据格式>[,]])用于向服务程序发送数据条款,与DDERequest()互逆。2.2VisualFoxpro中的OLEOLE5使用户可以将一个应用程序中建立的信息插入到另外的应用程序中。这些信息可以是图形、文本、声

8、音、电子表格等。这样的信息也称为对象,对象可以是由Windows应用程序建立的任何信息。当从一个应用程序传输对象到另一个应用程序时,此对象所来自的文档叫源文档,对象所进入的文档叫目的文档。从一个应用程序源文档将一个对象传

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。