タイトル | : Windows7でのシリアル通信異常 |
記事No | : 15353 |
投稿日 | : 2011/10/19(Wed) 12:00 |
投稿者 | : NT |
お世話になります。
PCとシーケンサ(設備制御用コントローラ)をシリアル通信で接続して、シーケンサ内のデータを読み出しています。
WindowsXP,Vista,NT,2000では、何の問題もなく動作していましたが、Windows7のみ 通信途中で異常となってしまいます。 下記が通信プログラムの内容です。 ------------------------------------------------------------------------------ '******** '通信実行 '******** ComRetry: FormName.MSComm1.Output = sendstring 'コマンドを送信 recvstring = "" Do While FormName.MSComm1.OutBufferCount > 0 '送信バッファが空になるまで待機 DoEvents Loop Do While ((Len(recvstring) = 0) Or (Right(recvstring, 1) _ <> Chr(13))) And (Cnt < 200000) recvstring = recvstring & FormName.MSComm1.Input Cnt = Cnt + 1 '正常に通信が行われなかったときループを抜ける DoEvents Loop If Cnt >= 200000 Then If Retry > 5 Then MsgBox "通信ができません。電源及び通信ケーブルを確認してください。" Communicate = 1 GoTo Exit_Communicate Else Retry = Retry + 1 GoTo ComRetry End If End If ---------------------------------------------------------------------------------- 互換モードを試してみましたが、症状は変わりませんでした。 Windows7と他のOSで、何が違うのでしょうか?
よろしくお願いいたします。
|