今回初めて、WriteFile関数を使用してシリアル通信を行おうと考えているのですが、16進の81をChr$(129)として送信したところオンラインモニターで00で送信されてしまいます。何か、どなたか良い方法をご存知内でしょうか?OSはWin2003で
開発言語はVB6.0です。よろしくお願い致します。
> 16進の81をChr$(129)として送信したところ
わざわざ文字列化せず、バイナリのまま送信すれば良いのでは。
説明がもれていたのですが、通信の仕様上、16進でのデータ送信になる為、キャラクタでのデータ送信をせざるを得ないのです。または、WriteFile関数でのバイトデータ送信の仕方が分かればよいのですが。。。
いろいろやってはみているのですが。。。
> WriteFile関数でのバイトデータ送信の仕方が
第 2 引数に、バイト配列の先頭要素を参照渡しするか、もしくは、
その要素のアドレスを値渡しすれば良いかと思います。
それとも、それは既に試したが期待動作しなかった…という事でしょうか?
>魔界の仮面弁士 様
度々の回答ありがとうございます。
バイト配列渡しがうまく出来ずに苦戦中です。
データセットももう一度見直しをしてみます。
>魔界の仮面弁士 様
いろいろご回答ありがとうございました。
どうにかバイト配列でのデータ渡しでうまくいきました。
ありがとうございました。
| ツイート |
|