テキストボックスに入力した16進数の値を,そのままMSCommで送信するには?

解決


VB試行錯誤  2004-06-06 13:51:42  No: 113749

VB6.0ですがテキストボックスに16進数の値(例えば"A"や"F1")を入力し、その値をそのままMSCommで送信したいのですが、できず困っております。

現状ですと、テキストボックスに"A"を入れて送信すると0x41のアスキーコードが出力されてしまいます。テキストボックスに16進数を直接入れて、そのまま出力したいのですが、変換されて出力されてしまうのです。

テキストボックスに入力した16進数の値を、そのまま16進数としてMSCommで出力するにはどのような方法があるのでしょうか。お願いします。


魔界の仮面弁士  2004-06-06 14:58:54  No: 113750

X = CByte("&HA")
のように、先頭に&Hをつけて変換すれば、数値になります。
これを繰り返してバイト配列を作成し、それを送信すれば良いかと。


VB試行錯誤  2004-06-07 01:35:09  No: 113751

魔界の仮面弁士  様

以下のようにすることで、できました。
たいへんありがとうございました。

Dim SendHex(0) As Byte
    SendHex(0) = CByte("&H" & txtUserSent.Text)
    MSComm1.Output = SendHex


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加