• ベストアンサー

アプリ再起動せずにデバイスリセットして通信する方法

USB開発初心者です。 PCアプリからUSB通信でデバイス機器をリセットさせ(何かメッセージを送って、デバイス側がそのメッセージを受信するとリセットする)、 デバイスリセット後にアプリを再起動せずにUSB通信を再開させる方法はあるのでしょうか? 現状、デバイスがリセットし、エニュメレーションを行ってPCに認識させた後は、 アプリとデバイスでUSB通信が上手く出来なくなってしまいます。 デバイスリセット後にアプリを再起動させると問題無く通信出来る様です。 何か方法等あれば教えて下さい。 よろしくお願いします。 ※情報が足りない場合等ご指摘頂ければ助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • gha10320
  • ベストアンサー率71% (5/7)
回答No.1

Windowsの場合で書きます まずは、アプリを立ち上げないでデバイスマネージャーを立ち上げ USBを抜くと、ドライバがアンロード(デバイスマネージャーからいなくなる) されて、また挿入するとロードされる様子を観察して下さい。(現れる) この様子が、デバイスの抜き差しを行った正しい動きです ではアプリを立ち上げて デバイスをリセットすると、ドライバがアンロードされますが アプリがそのデバイスのハンドルを握りっぱなしで アンロードされていない状態だと思います。 アプリでWM_DEVICECHANGEメッセージを受け取って 抜けた場合は、ハンドルクローズ 挿入された場合は、ハンドルオープン すればいいと思います。 Linuxの場合だと、ドライバのremoveハンドラが呼び出されたら アプリにシングナル渡すか位しか思いつきません。

optimum22
質問者

お礼

gha10320様 ご回答ありがとうございます。 具体的にご指摘頂きましてとても参考になりました。

関連するQ&A

  • 内蔵WEBカメラの起動・通信方法について。

    富士通NF/A70BZ(FMVNFA70BZ)にWindows 7 Professional(元はVista Home Premium)をインストールして使っています。 幸いにも、内蔵のWEBカメラSirius USB2.0 CameraのドライバはWindows 7に対応しています。 デバイスとプリンターの所にはSirius USB2.0 Cameraと表示されています。 デバイスマネージャー→イメージングデバイス→Sirius USB2.0 Camera→プロパティ→全般タブ→デバイスの状態→このデバイスは正常に動作しています。と表示されています。 そこで、カメラを起動して自分がカメラにどのように映っているのか?を確認しようと思うのですが、 ディスプレイに映し出す方法が全く分かりません。(例えばカメラのアイコンをクリックするとかでしょうか?) 何かアプリケーションをダウンロードする必要があるのでしょうか? ISPは契約しているのでOKです。 どのように通信するのか?全く分かりません。 PCの設定は必要ありますか? 方法が分からず大変困っています。 カメラの起動・通信方法をご教授下さい。 どうか宜しくお願い致します。 補足:名前はSirius USB2.0 Cameraですが、USBではなく内蔵カメラです。

  • usbデバイスから起動させる

    LAVIE NS700/M のノートPCを使っています。 USBデバイスから読み込んで起動させたいと思っていて、起動時にF2キーを押して、 BOOTメニューのUSB BootをEnabledにしているのですが、全然USBデバイスから 起動できません。 どのようにしたら、USBデバイスから起動できるようにできるのでしょうか。 起動させる順番を変更する必要があるのでしょうか。 よろしくお願いします。 ※OKWAVEより補足:「NEC 121ware : Windows」についての質問です

  • 再起動するとディスプレイにリセットがかかってしまう

    17インチCRTを使っているのですが、PC本体の電源を落とすと、 次に起動したときに、ディスプレイの画面全体が小さく表示されてしまいます。 そのたびに調整ボタンを使って画面を広げているのですが、 画面が広がった状態でPCを起動することは可能でしょうか? 画面設定の「中断/再開されたときはディスプレイをリセットする」にチェックは入っていません。 OSはWin98SEです。よろしくお願いします。

  • 突然リセットして、再起動してしまいます。

    最近、PCが突然リセットがかかり、再起動してしまいます。 たぶんハードが原因だと思うのですが、どこが悪くて落ちてしまうのか落ちる直前までのログを取るような方法(ソフト)はないでしょうか?他にハードを診断する方法(ソフト)はないでしょうか? ご存知の方教えてください。よろしくお願いします。

  • デバイスを認識しなくなる

    PCショップにて組んでもらったPCなのですが、本体全面下部にあるUSBポートに時々トラブルがみられます。USB機器を購入してドライバをインストールします。機器を接続してみるとデバイスを認識して使用できます。しかし一旦PCを終了して再起動したあと、同じポートにUSB機器を差し込んでも、そのデバイスを認識しません。 今までに、iPOD、CANONデジカメ、アイオーデーターのビデオキャプチャー等、何度もあります。なにが問題なのでしょうか? 参考になる意見が頂けましたら助かります。 よろしくお願い致します。

  • 起動デバイス

    こんちわ。 やっとWindowsXp Professionalを手に入れたんですけど・・・ 起動用FDで起動する必要があるらしくて、起動用FDは作成したものの起動デバイスの順番を設定するやり方?方法がわかりません。 『起動デバイスの順番を設定する方法』を教えてください。 ちなみにPCはVAIOのPCV-J20BPです。よろしくお願いします。

  • リセットスイッチを押さないと起動しない

    はじめまして。 PCを起動するとき、今までは電源スイッチを押せば普通に起動していたのですが 2,3日くらい前から、電源スイッチを押しても起動せず その下にある小さいスイッチ(ハードウェアリセットスイッチというらしいですね)を押さないと 起動しなくなってしまいました。 流れ的にいうと 1.電源スイッチを押す。 (この時点でPC本体自体は起動してるぽいですが、モニタは黒いままでwindows起動画面にもなりません) 2.リセットスイッチを押す。 3.モニタや周辺機器(スキャナ等)が動き出し、windows画面に移る。 と言った感じです。 最初この小さいスイッチの用途が分からなかったのですが 調べてみると、これ強制再起動ボタンで起動中には押さない方が良いらしいですね。 ただ、そうしないと起動しないので困っています。 どなたか解決法をご存知ではないでしょうか。 OSはVistaのHome Premiumです。宜しくお願いします。

  • 再起動を妨げるアプリ?

    PCの動作が遅いので再起動すると「このアプリが再起動を妨げています」とメッセージが出ます。これは何か問題があるのですか? 問題があるのなら解決したいと思います。このメッセージが出ないようにするにはどうしたらいいですか? パソコン初心者の私にもわかるように教えてください。 PCはwindows8 Google Chromeを使用しています。 よろしくお願いします。 ※OKWAVEより補足:「富士通FMV」についての質問です。

  • デバイスについて

    デバイスについて RX-DUSを買いました。 でもPCに接続させるとUSBデバイスが認識されませんってメッセージがでるんです。 どうすればいいんでしょうか

  • 翌日の起動ができない。リセットするとできる。

    数日前から PCを起動するとOSが立ち上がらず リセットボタンを押すと立ち上がるようになりました。 PCをシャトダウン後 すぐ起動すると普通に立ち上がります。 昨日 HDのエラーチエックをしたところ「エラー修復しました」とのメッセージが出ました。本日起動すると同じ現象がでました。 OSが立ち上がったあとは問題なく 動作しております。 対策を教えてください。 ちなみに PCの構成は WindowsXP+SP2 HDは80GBを2台 メモリー2GB      

専門家に質問してみよう