home *** CD-ROM | disk | FTP | other *** search
- unit Ddcli;
-
- interface
-
- uses WinTypes, WinProcs, Classes, Graphics, Forms, Controls, StdCtrls, Menus,
- DdeMan;
-
- type
- TFormD = class(TForm)
-
- MainMenu1: TMainMenu;
- File1: TMenuItem;
- Edit1: TMenuItem;
- PasteLink1: TMenuItem;
- GroupBox1: TGroupBox;
- DdeDatLabel: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- AppName: TEdit;
- TopicName: TEdit;
- ItemName: TEdit;
- NewLink1: TMenuItem;
- GroupBox2: TGroupBox;
- Button3: TButton;
- Button4: TButton;
- DdeClient: TDdeClientConv;
- DdeClientItem: TDdeClientItem;
- XEdit: TMemo;
- DdeDat: TMemo;
-
- procedure doPoke(Sender: TObject);
- procedure doMacro (Sender: TObject);
- procedure doPasteLink(Sender: TObject);
- procedure doNewLink(Sender: TObject);
- procedure DdeClientItemChange(Sender: TObject);
- procedure Edit1Click(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- end;
-
- var
- FormD: TFormD;
-
- implementation
-
- uses Dialogs, SysUtils;
-
- {$R *.DFM}
-
- procedure TFormD.Edit1Click(Sender: TObject);
- var
- Service, Topic, Item : String;
- begin
- PasteLink1.Enabled := GetPasteLinkInfo (Service, Topic, Item);
- end;
-
- procedure TFormD.doPasteLink(Sender: TObject);
- var
- Service, Topic, Item : String;
- begin
- if GetPasteLinkInfo (Service, Topic, Item) then
- begin
- AppName.Text := Service;
- TopicName.Text := Topic;
- ItemName.Text := Item;
- DdeClient.SetLink (Service, Topic);
- DdeClientItem.DdeConv := DdeClient;
- DdeClientItem.DdeItem := ItemName.Text;
- end;
- end;
-
- procedure TFormD.doNewLink(Sender: TObject);
- begin
- DdeClient.SetLink (AppName.Text, TopicName.Text);
- DdeClientItem.DdeConv := DdeClient;
- DdeClientItem.DdeItem := ItemName.Text;
- end;
-
- procedure TFormD.doPoke (Sender: TObject);
- var
- DdeCli : TDdeClientConv;
- begin
- DdeCli := DdeClientItem.DdeConv;
- if DdeCli <> Nil then
- DdeCli.PokeDataLines (DdeClientItem.DdeItem, XEdit.Lines);
- end;
-
- procedure TFormD.doMacro (Sender: TObject);
- var
- DdeCli : TDdeClientConv;
- Cmd : String;
- begin
- DdeCli := DdeClientItem.DdeConv;
- if DdeCli <> Nil then
- begin
- Cmd := XEdit.Text + #13#10;
- DdeCli.ExecuteMacroLines (XEdit.Lines, True);
- end;
- end;
-
- procedure TFormD.DdeClientItemChange(Sender: TObject);
- begin
- DdeDat.Lines := DdeClientItem.Lines;
- end;
-
- end.
-