掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MSCOMMでWバイトの半分だけを送信するには? (ID:104696)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
あんちゃんありがとうございます。 こんなに全部書いていただいて恐縮です。 昨日それを試してみたのですが、全部HEXにすると、 その数字が<DLE>や<STX>と被ってしまうため、エラーになりました。 現状では、以下のように送っています。 ********************************************************************* MSComm1.Output = Chr(&H10) & Chr(&H2) & Chr(lngLoop + 1) & Chr(&HFC) _ ・・・文字列(数値+Wバイト文字)・・・Chr(&H10) & Chr(&H3) & CRC ********************************************************************* ※lngLoopはループナンバー ※DLE = Chr(&H10),STX = Chr(&H2),ETX = Chr(&H3) このようにすると、Wバイト文字を半分にした時と同様、 Chr(&HFC)は半角のNULLに変化してしまい、通信エラーになります。 HEXで送れば何とかなると思ったのですが、Chr(&H・・)の形が 送れたらと思うのですが、お分かりになりますか? 例えば「あ」はバイナリで「82 A0」ですが、 それをChr(&H82)とChr(&HA0)に分けると半角のNULLになってしまいます。 それはVBが漢字コードを認識した場合、半分の1バイトでは処理できず、 半角NULLにしてしまうのかと思っているのですが、 そこらへんもお分かりでしたらご教授願いたいのですが・・・。 よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.