S
single
Unregistered / Unconfirmed
GUEST, unregistred user!
DDEClientConv.SetLink函数中的DDEService参数到底能不能加路径?
现有如下DDEClient代码段
DdeClientConv1.ConnectMode := ddeManual;
if DdeClientConv1.SetLink('Cserver', 'ColorServer') then
^^^^^^^^^
begin
DdeClientItem1.DdeItem := 'ColorItem';
if not DdeClientConv1.OpenLink then
begin
ShowMessage('OpenLink Failed');
m_error := getlasterror;
ShowMessage(inttostr(m_error));
end
else
ShowMessage('OpenLink Succeed!');
end;
配合我编写的Cserver程序(DDEServer)一起工作,OpenLink Succeed.
注意我标注的SetLink函数的第一个参数,这个表示DDEServer的程序名(
去掉扩展名.exe)。按照Delphi的联机帮助的说法,当有必要的时候,
这个参数可以包括路径名。
于是我把它改成了全路径,譬如改成'C:/test/CServer',
再执行,结果发现CServer程序也会自动的被执行,但是
OpenLink Failed。 我将其替换成了任何一种可能性,
包括'./CServer',还是不行,百思不得其解,希望各位高手不吝赐教
若是该参数真的不支持路径名,那么DDE的通讯双方不就有了个不
成文的规定,就是两者必须在同一个路径下才能协同工作,那
不是成了个天大的笑话了么?
现有如下DDEClient代码段
DdeClientConv1.ConnectMode := ddeManual;
if DdeClientConv1.SetLink('Cserver', 'ColorServer') then
^^^^^^^^^
begin
DdeClientItem1.DdeItem := 'ColorItem';
if not DdeClientConv1.OpenLink then
begin
ShowMessage('OpenLink Failed');
m_error := getlasterror;
ShowMessage(inttostr(m_error));
end
else
ShowMessage('OpenLink Succeed!');
end;
配合我编写的Cserver程序(DDEServer)一起工作,OpenLink Succeed.
注意我标注的SetLink函数的第一个参数,这个表示DDEServer的程序名(
去掉扩展名.exe)。按照Delphi的联机帮助的说法,当有必要的时候,
这个参数可以包括路径名。
于是我把它改成了全路径,譬如改成'C:/test/CServer',
再执行,结果发现CServer程序也会自动的被执行,但是
OpenLink Failed。 我将其替换成了任何一种可能性,
包括'./CServer',还是不行,百思不得其解,希望各位高手不吝赐教
若是该参数真的不支持路径名,那么DDE的通讯双方不就有了个不
成文的规定,就是两者必须在同一个路径下才能协同工作,那
不是成了个天大的笑话了么?