ddeadvise( ) 函数

示例 请参阅

创建一个交互式链接或自动链接,用来进行动态数据交换 ( DDE )。

语法

DDEAdvise(nChannelNumber, cItemName, cUDFName, nLinkType)

返回值类型

逻辑型

参数

nChannelNumber

指定通道号。

cItemName

指定项名。例如,Microsoft Excel 使用行标志和列标志指出工作表的单元,项名 R1C1 指出工作表第一行、第一列的单元。

cUDFName

当建立一个交互式链接或自动链接并且修改 cItemName 时,指定要执行的用户自定义函数。执行用户自定义函数时,按下面给定顺序给用户自定义函数传递六个参数:

参数  内容
Channel Number 服务器应用程序的通道号
Action ADVISE 或 TERMINATE
Item 项名。如:R1C1 表示一个 Microsoft Excel 的工作表单元
Data 新数据(自动链接)或空字符串(交互式链接)
Format 数据格式。如:CF_TEXT
Advise Status 链接类型(0 = 人工,1 = 交互式,2 = 自动)

用户自定义函数在它的 LPARAMETER 或 PARAMETER 语句中,应该有六个参数接受从服务器应用程序传递的值。如果建立的是交互式链接,则执行用户自定义函数时,Data 参数中将传入一个空字符串,在此之后可以用 DDERequest( ) 函数获取这些数据;如果建立自动链接,则执行用户自定义函数,并通过 Data 参数传送数据。
当链接由服务器更新时,Action 参数包含 ADVISE。当客户或服务器关闭链接时,调用用户自定义函数,并且 Action 参数包含 TERMINATE。

任何用户自定义函数返回的值都被忽略。

nLinkType

可以指定以下链接类型:

nLinkType 链接类型
0 人工
1 交互式
2 自动

可通过将 nLinkType 指定为 0 来关闭服务器应用程序发来的通知。如果项改变了,就不执行用户自定义函数。

说明

ddeadvise( ) 函数用来为服务器应用程序中的一个项名创建一个交互式链接或自动链接。当用 ddeadvise( ) 函数创建交互式链接时,服务器应用程序会告诉 Visual FoxPro 项名已被更新;如果创建自动链接,服务器应用程序就通知 Visual FoxPro,告诉它项名已被更新,同时将新数据传送给 Visual FoxPro。
在创建一个链接前,必须用 DDEInitiate( ) 函数建立一个通向服务器应用程序的通道。
可以用 ddeadvise( ) 函数关闭服务器的通知。
当 ddeadvise( ) 函数执行成功,返回“真”(.T.);否则返回“假”(.F.)。