VisualStudo2019
WPFアプリ(.NET Framework4.7.2)VisualBasicにて開発を行っております。
RS-232C シリアルポート(COM)において仮想COMを使用し、テスト通信したいです。
https://kana-soft.com/tech/sample_0008.htm
を参考にVBクラスを追加し、
Imports System.IO.Portsを冒頭に記述しております。
フォームにSerialPortコントロールを設置し、各種Button、TEXTBOX、comboboxを設置しました。
以下コードです。
Imports System.IO.Ports
Public Class SerialPort
''' <summary> ''' シリアルポートクラス ''' </summary> ''' <remarks></remarks> Private SerialPort As SerialPort '****************************************************************************' '* '* @brief ダイアログの初期処理. '* '* @param [in] sender イベントの送信元のオブジェクト. '* @param [in] e イベント情報. '* '* @retval なし. '* Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '利用可能なシリアルポート名の配列を取得する. Dim PortList As String() PortList = SerialPort.GetPortNames() cmbPortName.Items.Clear() 'シリアルポート名をコンボボックスにセットする. Dim PortName As String For Each PortName In PortList cmbPortName.Items.Add(PortName) Next PortName If cmbPortName.Items.Count > 0 Then cmbPortName.SelectedIndex = 0 End If cmbBaudRate.Items.Clear() 'ボーレート選択コンボボックスに選択項目をセットする. Dim baud As BuadRateItem baud = New BuadRateItem baud.NAME = "4800bps" baud.BAUDRATE = 4800 cmbBaudRate.Items.Add(baud) baud = New BuadRateItem baud.NAME = "9600bps" baud.BAUDRATE = 9600 cmbBaudRate.Items.Add(baud) baud = New BuadRateItem baud.NAME = "19200bps" baud.BAUDRATE = 19200 cmbBaudRate.Items.Add(baud) baud = New BuadRateItem baud.NAME = "115200bps" baud.BAUDRATE = 115200 cmbBaudRate.Items.Add(baud) cmbBaudRate.SelectedIndex = 1 cmbHandShake.Items.Clear() 'フロー制御選択コンボボックスに選択項目をセットする. Dim ctrl As HandShakeItem ctrl = New HandShakeItem ctrl.NAME = "なし" ctrl.HANDSHAKE = Handshake.None cmbHandShake.Items.Add(ctrl) ctrl = New HandShakeItem ctrl.NAME = "XON/XOFF制御" ctrl.HANDSHAKE = Handshake.XOnXOff cmbHandShake.Items.Add(ctrl) ctrl = New HandShakeItem ctrl.NAME = "RTS/CTS制御" ctrl.HANDSHAKE = Handshake.RequestToSend cmbHandShake.Items.Add(ctrl) ctrl = New HandShakeItem ctrl.NAME = "XON/XOFF + RTS/CTS制御" ctrl.HANDSHAKE = Handshake.RequestToSendXOnXOff cmbHandShake.Items.Add(ctrl) cmbHandShake.SelectedIndex = 0 '送受信用のテキストボックスをクリアする. SndTextBox.Clear() RcvTextBox.Clear() End Sub
End Class
PortList = SerialPort.GetPortNames()で 'SerialPort' のメンバーではありません。
のエラーがでます。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14122152809を参照し、オブジェクトブラウザについて調べたのですが解決方法がわかりませんでした。
また
Dim baud As BuadRateItem
baud = New BuadRateItem
や
Dim ctrl As HandShakeItem
ctrl = New HandShakeItem
型 'BuadRateItem' は定義されていません。
のようなエラーがでます。
を参照しDim BuadRateItem As STRINGなどで定義すればいいのかと思いましたが、ダメでした。
初心者で勉強不足なのは承知しております。
お忙しいところ大変恐縮ではありますが、どなたかお助けいただけませんでしょうか。
できれば初心者でもわかるようにご教授いただければ幸いです。
よろしくお願いいたします。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。