当前位置: 首页 > 图文教程 > 开发语言 > Delphi > 剪贴板和动态数据交换(二)

Delphi
Delphi设计简易对象垃圾回收框架
Delphi开发Web应用程序打印组件
Delphi客户服务器应用开发(四)
Delphi自定义部件开发(一)
Delphi自定义部件开发(二)
Delphi自定义部件开发(三)
Delphi自定义部件开发(四)
开发Delphi对象式数据管理功能(一)
开发Delphi对象式数据管理功能(二)
开发Delphi对象式数据管理功能(三)
开发Delphi对象式数据管理功能(四)
开发Delphi对象式数据管理功能(五)
用Delphi语言来学设计模式之简单工厂篇
Delphi2005和DUnit搭建敏捷开发平台记录
你想成Delphi高手吗?快来学Delphi快捷键
Borland最新版开发工具Delphi2005抢先预览
用Delphi实现JPEG格式图像的显示
用DELPHI编程访问SQL SERVER数据库
用Delphi编制趣味动画鼠标
用Delphi实现选单的自动隐藏功能

Delphi 中的 剪贴板和动态数据交换(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 82 ::
收藏到网摘: n/a

 

7.3.5 控制服务器应用程序的执行 

        客户程序控制服务器应用程序的一个方面是:必要的时候客户程序可以启动服务器程序,并装载会话主题。

        而客户程序控制服务器应用程序更重要的一点是向服务器发送服务器承认的宏命令,来完成对服务器应用程序的各种操作。服务器到底支持哪些宏命令,可参阅服务器应用程序文档。

       发送宏命令要使用DDEClientConv的两个方法 ExecuteMacroExecuteMacroLines ,它们的语法如下: 

function ExecuteMacro(Cmd: PChar; WaitFlag: Boolean): Boolean;

function ExecuteMacroLines(Cmd: TStrings;WaitFlag: Boolean): Boolean; 

        Cmd是欲发送的宏命令字符串或宏命令字符串链表。WaitFlag决定了在DDE 服务器程序执行宏命令时客户程序的行为。如果WaitFlag设置为True,则在服务器宏命令执行完毕前,不允许对ExecuteMacroExecuteMacroLinesPokeDataPokeDataLines这些方法的成功调用,它们都不向服务器发送数据并返回False。如果WaitFlag设置为False,则调用的方法在第一个宏执行完毕前即试图向服务器发送数据。

        WaitFalg的设置也取决于服务器应用程序。一些应用程序当在第一个宏执行完之前就试图向它发送数据或命令时,可能导致第一个宏执行失败或导致不可预料的后果。具体情况可查阅服务器应用程序文档。

        函数返回值表示命令串是否被成功传输。而宏命令执行是否成功客户是无法检测到的。 

7.3.6 格式化文本 

        DDEClientConv有一个布尔属性FormartChars,用于决定是否格式化文本。所谓格式化文本是指从传输来的文本数据中过滤掉BackSpace(8) Tab(7) Linefeed(10) Return(13)等字符。括号内是字符的ASCII码。许多时候这些字符将导致DDE客户数据显示的混乱。

  FormatChars的缺省值是False。 

7.3.7 响应DDE事件 

        部件DDEClientConv有两个事件OnOpenOnClose,分别在DDE 会话建立和中止时触发。部件DDEClientItem有一个OnChange事件。这一事件常用于DDE项目数据的转储和显示,如(7.3.1)节所示。

        在自动模式下,OnOpen事件在包含DDEClientConv部件的窗口创建时触发,或在调用SetLink方法时触发,OnClose事件在客户程序或服务器程序关闭时触发。

        在人工模式下,OnOpen事件在调用OpenLink 方法时触