tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板
[ツリー表示へ]  [ワード検索]  [Home]

タイトル 助けてください。ブルー画面
投稿日: 2008/02/06(Wed) 15:43
投稿者Pman
はじめまして。VB初心者です。

現在、MSCommでシリアルポートを使って、ファームウェアとの通信を行おうとしています。
しかし、blue toothが使っているポートを誤って使ってしまい、ブルー画面が出てしまいます。

以下、詳細です。少し長いですが、なるべく詳しく書きますので、
御一読と御回答よろしくお願いいたします。


1.まず、通信に使用できるポートを調べるため、

COM1〜COM16まで、
MSComm1.PortOpen = True
にて、ためしにポートを開いて、エラーをチェックしてます。

ここで、ポートによって、err=8002、8012、0が出るので、
err=0,8012の時には、そのポートを「使用候補」として、
配列にためておきます。

2.次のステップで、前のステップで「使用候補」にしたポートをつかって、
実際に通信テストを行います。

通信テストでは、通信相手であるファームウェアに、

MSComm1.Output = "?" & Chr(&HD)

を送ります。通常、通信がうまくいけば、ファームウェアから
”OK”が返ってくるようになっているので、

Form1.MSComm1.InputMode = comInputModeText
Buffer = Form1.MSComm1.Input

を使って無事に受け取れたポートが「真の使用ポート」であるとして、

それ以降そのポートを使って進めています。


3.しかし、ひとつ問題がありまして、

使っているパソコンが、blue toothを使っていて、

常にCOM5がblue toothに使われています。

このCOM5を使って、先ほどの
MSComm1.Output = "?" & Chr(&HD)
の作業をした瞬間、パソコンがブルー画面になってしまいます。

はじめは、err=8012と出ているにも関わらず、ポートを無理矢理使用しているから、
と思ったのですが、

他の、err=8012が出ているポートは、使用してもブルー画面になりません。

おそらく問題は、blue tooth で使っているポートを使って通信を行ってしまっている
事だと思われますが、
blue toothが使われているポートと、そうでないポートの見分けがつかないので、
(どれもerr=8012であるため)

逃げようがありません。。


どなたか、助けてください。よろしくお願いいたします。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。