DDE全称为Dynamic Data Exchange ,据说是一种过时的技术,不过其实现在的xp还在使用.好,不管过时与否,只要有用并且能用就行了.
当一个程序,只想打开一个实例,但是又希望能在同一个实例中响应并打开多个文档的时候,就可以用DDE了.
简单用法(VB):
原理,简单的说,就是一个接收器(服务器),一个发送器.接收器只能是Form,发送器只能是Label,TextBox,PictrueBox.
接收器需要设置一下属性,LinkMode=1,LinkTopic是个字符串,是个与发送器连接的接头暗号(大概这么个意思吧),可随意填写,但最好填些容易理解的文字.
发送器不需要设置,或者是用代码来设置,代码如下
.LinkTopic = "ApplicationTitle|Topic" 'ApplicationTitle填写的是接收器所在工程里面设置的Application Title,Topic就是接收器设置的LinkTopic
.LinkMode = 2
.LinkExecute Msg 'Msg是发送给接收器的信息,字符串
据说还要中断连接(不知是否真的需要),据说可以采用超时的办法
Dim t As Long
t = .LinkTimeout
.LinkTimeout = 1
.LinkMode = 0
.LinkTimeout = t
接收器如何接收信息,在Form_LinkExecute中响应,
Private Sub Form_LinkExecute(CmdStr As String, Cancel As Integer)
'to do here
'CmdStr就是 .LinkExecute Msg 发送来的Msg
Cancel = False '记得这句,不然出错
End Sub
好,DDE简单的用法就介绍完了,详细的用法&原理,大家自己找资料吧