Hallo,
ich habe ein Messgerät mit Software (nicht von mir), die die Messwerte über einen
DDE Server verschickt.
Das funktioniert auch. In Excel kann ich z.B. die Messwerte so automatisch empfangen:
=DMM|'ut61b@usb2'!v
Ich möchte die Daten aber in meinem Delphi-Programm empfangen.
Soweit ich verstanden habe, müsste das so funktionieren:
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DdeMan;
type
TForm1 =
class(TForm)
DdeClientConv: TDdeClientConv;
DdeClientItem: TDdeClientItem;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure DdeClientItemChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
DdeClientConv.SetLink('
DMM','
UT61B@USB2');
DdeClientItem.DdeItem:= '
v';
end;
procedure TForm1.DdeClientItemChange(Sender: TObject);
begin
Label1.caption:=DdeClientItem.text;
end;
end.
Tut es aber nicht. Der DdeClientItemChange-Handler wird nie ausgelöst.
Das ist meine erste Erfahrung mit
DDE. Vermutlich habe ich einen dummen Anfängerfehler gemacht.
Bitte helft mir!