/ /シリアルポートにバイナリを送る - winapi、binary、serial-port、hex

バイナリをシリアルポートに送る - winapi、バイナリ、シリアルポート、16進数

シリアル文字列をシリアルポートに送信します。 WriteFile(handle、 "A"、strlen( "A")、...)を呼び出す必要があります。

しかし、16進数または2進数を指定して送信したい場合はどうなりますか?たとえば、WriteFile(handle、0x41、sizeOf(0x41)、...)を送信したいですか。

これを可能にする機能はありますか?

回答:

回答№1は0

多くの方法があります。

もっとも簡単なのはWriteFile(handle、 "x41"、1 ...)です。

あなたは長さを知っているのでstrlen()は冗長です。


回答№2の場合は1

1バイトだけを書き込みたい場合でも、それは配列内にある必要があります。

だから、あなたが必要になります:

int buffer[1024];
buffer[0] = 42;

WriteFile(handle, buffer, 1);

これを見てください: http://msdn.microsoft.com/en-us/library/aa365747(VS.85).aspx