Delphi5 で CiaComPort を使用していますが、問題があります。デバイスにコマンドを送信します。機能を利用していSend(Buffer: Pointer; Len: integer): cardinal
ます。
procedure TFormMain.CiaComportraParancsotKuld(CNev, Szoveg: WideString; NyoId, PortSzam: Integer);
var
Kar: PChar;
Szam: Integer;
Parancs: WideString;
begin
Parancs := #$0002+'~JS0|'+CNev+'|0|'+Szoveg+#$0003;
Kar := PChar(Parancs);
Szam := length(Parancs)*2;
FormMain.CiaComPort1.Open := True;
FormMain.CiaComPort1.Send(Kar, Szam);
FormMain.CiaComPort1.Open := False;
end;
この手順は問題ありませんが、コマンドを送信すると、残念ながらデバイスからの文字が表示されませんCiaComPort1DataAvailable(Sender: TObject)
。
//Receive(Buffer: Pointer; Len: integer): cardinal
procedure TForm1.CiaComPort1DataAvailable(Sender: TObject);
var
Kar: PChar;
Szam: Integer;
Parancs: WideString;
begin
Szam := RxCount;
Parancs := WideString(Receive(Kar, Szam)); //I think that's not good.
Memo1.Lines.Add(Parancs);
end;
残念ながら、バッファを読み取ることができません。あなたはなにか考えはありますか?