Forum: Netzwerke
Delphi
by ljmarkus,
26. Nov 2007
Aha, jetzt hab ich es Verstanden.
Danke, Markus
Forum: Netzwerke
Delphi
by ljmarkus,
26. Nov 2007
hmm,
s: string;
ist bei mir so in den VAR.
wie muss es denn lauten damit es ein long string ist ?
so schaut es derzeit aus:
procedure TForm1.ArtNetSend(Sender: TObject);
var i: integer;
Forum: Netzwerke
Delphi
by ljmarkus,
26. Nov 2007
Hallo.
genau das habe ich gesucht *g*
s:='Art-Net'#0#0#80#0#14#0#0#0#0#2#0;
for i:=0 to ... do s:=s+chr(ArtDMXOutBuf);
da der String ja nur 255 argumente haben darf, muste ich mehere Strings in einen String packen.
Forum: Netzwerke
Delphi
by ljmarkus,
25. Nov 2007
IdUDPClient1.Send ist ein (AData: String);
ich bekomme ja die DMX In Daten vom Interface als Wert für channel 1 00-FF.
um die 512 Channel ins Netz zu senden muss ich ja:
.Send('2.225.255.255',6454,'Art-Net'#0#0#80#0#14#0#0#0#0#2#0 ab hier die DMX Werte...
Beispiel: Channel 1 = 0(0), Channel 2 = FF(255) Channel 3 = 7F(127) = 00FF7F......
Nur wie bekomme ich das in den String?
Forum: Netzwerke
Delphi
by ljmarkus,
25. Nov 2007
@ sirius
Vielen Dank. Da wäre ich jetzt so nit drauf gekommen.
Nun das nächste Problemchen,
ArtNet senden:
var DMXInBuf, ArtDMXOutBuf: arry of byte;
Forum: Netzwerke
Delphi
by ljmarkus,
24. Nov 2007
so jetzt klemmt es bei mir ......
Berechnung der Länge (Ergebnis = 512)
var LengthHi : Byte; // length of DMX512 data array High byte
Length : Byte; // Low Byte
begin
...
LengthHi := PByte(p+16)^; // Länge
Forum: Netzwerke
Delphi
by ljmarkus,
23. Nov 2007
Ich habe es heute Nachmittag dann so gelöst. Is glaube ich nicht die schönste und beste Sache, aber funktioniert.
procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var i: Word;
Universe: Word;
Opcode: Word;
x: string;
Forum: Netzwerke
Delphi
by ljmarkus,
23. Nov 2007
ok, nur wie ist es wenn ich zb. auf Position 18 einen 8 Bit auslesen möchte.
Forum: Netzwerke
Delphi
by ljmarkus,
23. Nov 2007
so, nun werden die Daten in eine Datei geschrieben.
procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
ABinding: TIdSocketHandle);
var x:string;
begin
Forum: Netzwerke
Delphi
by ljmarkus,
22. Nov 2007
ok, wir kann ich denn anders an die sache gehen ?
ne, ohne Dongle wird kein signal ausgegeben. hab die pro version.
lg, markus
Forum: Netzwerke
Delphi
by ljmarkus,
22. Nov 2007
So ich habe mal versucht den String zu Empfangen:
procedure TForm1.Button1Click(Sender: TObject);
var get : string;
begin
IdUDPClient1.Active := true;
get := IdUDPClient1.ReceiveString(572);
memo2.Text := get;
Forum: Netzwerke
Delphi
by ljmarkus,
22. Nov 2007
Hallo..
ich muss Daten Auslesen die per UDP im Netz gesendet werden.
In diesem Anhnag (pdf) habe ich mal ein Frame mit Ethereal angehängt:
Packet Artnet
Es handelt sich dabei um das ArtNet Protokoll von Artistic Licence
Artnet Protokoll