Autor Beitrag
masterchris_99
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 28



BeitragVerfasst: Fr 25.09.09 13:42 
Hallo,

ich bin gerade dabei mich ein wenig mit dem ZVT Protokoll und Delphi auseinander zu setzen nur leider bekomme ich es nicht ganz hin.
Ich kann mir ja das Log von APRO angucken ober da steht nur das ich was gesendet habe also gehe ich mal davon aus dass das EC-Terminal nicht geantwortet hat, oder?

hier ein offizielles Log für die Anmeldung am Terminal:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
Anmeldung:
Send: 10 02 06 00 06 12 34 56 BA 09 78 10 03 24 C3  ---- ......4V..x..$.
Recv: 06  ---- .
Recv: 10 02 80 00 00 10 03 F5  ---- ........
Recv: 1F  ---- .
Send: 06  ---- .


und hier mein Log:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
Port geöffnet durch Vorgang "Project1.exe" (PID: 3440)

Answer: 25.09.2009 10:04:42.38864 (+308.5000 seconds)

00                                                .               

Request: 25.09.2009 10:04:43.18564 (+0.7969 seconds)

10 02 06 00 06 12 34 56 BA 09 78 10 03 24 C3      ......4Vº.x..$Ã


Wenn ich die beiden jetzt vergleiche sehe ich keinen Unterschied:
ausblenden Quelltext
1:
2:
10 02 06 00 06 12 34 56 BA 09 78 10 03 24 C3 <-- orig
10 02 06 00 06 12 34 56 BA 09 78 10 03 24 C3 <-- meiner


und sogar wenn er falsch ist müsste ich doch ein NAK bekommen?!?

Hier noch das Log von APRO:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
APRO v4.06
Compiler : Delphi 7
Operating System : Windows XP 5.1 Service Pack 2
Device: COM1
Date/time: 25.09.09, 10:06:43
Time      Type      SubType       Data      OtherData
--------  --------  ------------  --------  ---------
0000.004  TrDatChg  Avail         00000001 
0000.004  TrgHdAlc  Window        0001059E 
0000.006  Dispatch  ReadCom       00000001  [00]
0000.006  Trigger   Avail         00000001 
0000.774  Dispatch  WriteCom      0000000F  [10][02][06][00][06][12]4V[BA]
                                            [09]x[10][03]$[C3]


Mein dazugehöriger Delphicode sieht so aus:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
function TForm1.ECOeffnen: Boolean;
begin
  try
    com_ec.ComNumber := 1;
    com_ec.InitPort;
    Result := True;
  except
    Result := False;
    Raise Exception.Create ('HP-(1) ' + Exception(ExceptObject).Message);
  end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  if com_ec.Open then
    com_ec.Open := False;
end;

procedure TForm1.btnSendClick(Sender: TObject);
  var daten, strBefehl: String;
begin
  daten := Chr(6) + Chr(0) + Chr(6) + Chr(18) + Chr(52) + Chr(86) + Chr(186) + Chr(9) + Chr(120);
  strBefehl := Chr(16) + Chr(2) + daten + Chr(16) + Chr(3) + Chr(36) + Chr(195);

  try
    com_ec.PutString(strBefehl);
    Application.ProcessMessages;
  except
    Raise;
  end;
end;


Also einfach öffnen und dann den Befehl übergeben.

mfg Chris
dayspring
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mi 07.07.10 15:12 
Das würde mich auch sehr interessieren! :o)