.Net SerialPort と VB6 MSComm の動作が異なる可能性はありますか?
どちらの場合も、バッファからデータを読み込んでいますが、MSComm dll を .Net プロジェクトにインポートすると、両方とも異なる文字列が得られました。(明らかに) 完全に動作します。
誰かがもっと深い情報を持っていますか?
それが役立つ場合は、ここに私の簡単なサンプルを示します。どちらの場合も、同じバイト配列を送信します...
VB6:
Dim MSComm1 As Object
Dim ArrToSend() As Byte
Dim IncomeData As String
Set MSComm1 = CreateObject("MSCommLib.MSComm")
With MSComm1
.CommPort = 1
.PortOpen = True
End With
ReDim ArrToSend(4)
ArrToSend(0) = 179
ArrToSend(1) = 1
ArrToSend(2) = 92
ArrToSend(3) = 92
MSComm1.Output = ArrToSend
IncomeData = MSComm1.Input
c#
SerialPort _serialPort = new SerialPort();
_serialPort.Open();
Byte[] _bytesToSend = new Byte[4];
_bytesToSend[0] = 179;
_bytesToSend[1] = 1;
_bytesToSend[2] = 92;
_bytesToSend[3] = 92;
_serialPort.Write(_bytesToSend, 0, _bytesToSend.Length);
String ReadExisting = _serialPort.ReadExisting();