數據發送在不同聯接模式下是不同的
procedure TForm
begin
If DDEItem =
begin
MessageDlg(
Exit;
end;
if Automatic then
DDEClientConv
else
begin
DDEClientConv
DDEClientConv
DDEClientConv
end;
end;
打開Microsoft Office中的Excel
下面的例子用客戶程序向程序管理器發送命令
程序管理器提供了應用程序的DDE接口命令字符串
命令格式為
CreateGroup(程序組名[
程序組不存在時進行創建
命令格式為
DeleteGroup(程序組名)
命令格式為
ShowGroup(程序組名
顯示標志用於控制程序組在程序管理器中以極大
命令格式為
ReLoadGroup(程序組名)
該命令使程序管理器先刪除而後再重新裝入一個已有的程序組
命令格式為
AddItem(命令行[
命令行控制程序項的執行
命令格式為
ReplaceItem(程序項名)
該命令刪除一個程序項
命令格式為
DeleteItem(程序項名)
從當前活動程序組中刪除一個程序項
命令格式為
ExitProgram(是否保存程序組信息標志)
從應用程序向程序管理器發送命令字符串的方法是基本一致的
程序設計界面如圖所示
DDEClientConv在設計時和程序管理器建立一個DDE會話
我們把只有一個字符串參數的命令發送情況抽象出來
function TForm
var
Macro: String;
Cmd: array[
begin
Result := True;
if Name <>
begin
Macro := Format(
StrPCopy (Cmd
DDEClient
if not DDEClient
Result := False;
DDEClient
end;
end;
過程首先利用Format函數形成宏字符串
Macro := Format(
而後把Pascal類型的字符串拷貝到一個程序管理器可接受的PChar類型字符串中
DDE聯接采用人工模式
三個按鈕CreateButton
創建程序組
procedure TForm
var
Name: String;
begin
Name := InputBox(
if Name =
MessageDlg(
else
if SendMacro(Name
MessageDlg(
end;
[
From:http://tw.wingwit.com/Article/program/Delphi/201311/25225.html