通知
すべてクリア
Topic starter
2006年9月28日 2:14 AM
こんばんは、いつもお世話になっています。
VC++ 6.0 SDIでRS232Cのプログラムを作っています。
受信バッファをクリアするAPIはなんですか?
MSCOMMだとバッファクリアのコマンドがあるようなのですが。
APIだと何になるのでしょうか?
よろしくお願いいたします。
2006年9月28日 6:58 AM
単に空読みすればいいように思えますが。
2006年9月28日 8:09 AM
MSDN探した?掲示板はインテリジェントなマニュアル検索システムではないですよ
PurgeComm/FlushFileBuffers
2006年9月28日 1:46 PM
うーん、
koisumi さんが、「RS-232Cの受信バッファはリングバッファだ」と言うことが
ご存知ならいいのですが、やみくもにPurgeCommを使うと必要なデータ
も消えてしまいます。
本当に消去したい時だけ「PurgeComm」を使ってそれ以外は「空読み」
がいいと思います。
「MSCOMM」の受信バッファの形状はどうだったのか分りませんが......
2006年9月28日 1:47 PM
修正、
>受信バッファの形状
「形状」はおかしいですね。
2006年10月13日 10:19 AM
推測ですが、
パリティ、オーバーラン等の通信エラーがあった時に、
バッファクリアしたいのでしょうかねぇ。
それなら、PurgeComm()でクリアする前に
ClearCommError()で、エラーリセット&エラー情報を取得し
通信処理が行なえるようにしてから、PurgeComm()した方が
いいかも!?