- 締切済み
Windows2000でUSB機器を接続したままシャットダウンするとブルーバック画面に
Windows2000のPCとあるUSB機器(セルフパワー)を接続したまま(ドライバーは認識されています。アプリは立ち上げていません。)、USB機器はそのままでPC側を先にシャットダウンすると、ブルーバック画面になり操作不能になってしまいます。ノートPCの場合は、同様のメッセージを出した後、電源を切れる旨のメッセージが出ず、勝手にレジュームします。 ブルーバック画面のメッセージは「*** STOP 何何 *** DRIVER_POWER_STATE_FAILURE 何何」です。 USB機器は外部で開発(ML60851使用)してもらった物ですが、JOB60851評価ボード(CD-ROMを紛失して基板のみ)とTechIVol8掲載のサンプルソフトの組合せでも同様の現象が起きます。 ちなみにWindows98、WindowsMeではこの現象は出ず、Windows2000でのみ起こります。 又、PCが動作している時のUSB機器の抜き差しは、Windows2000のメッセージが出て正常に活線挿抜できます。 今までは自分ではデバイスドライバーを作った事が無く、今回の件で問題を早急に解決しないといけなくて、自分でも調べようと思い、ここに書き込ませていただいています。 VC++6.0、NTDDKのBuildは何とか構築できたのですが、どこをどう追いかけたらいいのか皆目検討がつかない状態です。 何かアドバイスが有ればお願い致します。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- s13
- ベストアンサー率43% (19/44)
回答No.1
「*** STOP 何何 *** DRIVER_POWER_STATE_FAILURE 何何」 の部分を、正確に記録し、マイクロソフトのサポートサイトで 検索をすると、手がかりがつかめるかもしれません。
お礼
s13様 アドバイスありがとうございました。 確かに、それもやってみたのですが、一般的な事は分かったんですが、さすがに個別のドライバーソフトの範囲に入り込むような内容は出てこなかったです。英語が苦手という事もありますが。 で、結局、投稿の最後に入れたような事で解決しました。 ありがとうございました。
補足
なぜか回答が入力できないので、ここに書きます。 CQ出版のTechIVol8第7章「ML60851D評価ボード用 テストドライバの作成」P155のリストと同じ部分で、 WDMPNP.CのWDM_PnPAddDevice()の中で、以下の部分の DO_POWER_PAGABLEの1行を追加しただけで、問題は 解決しました。(もちろん私ではなく、仕事で専門に されている方が見つけてくださいました。) TechIVol8の方も同じ部分が間違えていて、私が確認した 限りでは、同じ様にブルーバックになりました。 筆者様は出張中で確認は取れていません。 沖電気様からは、TechIVol8のテストドライバで特に 不具合は確認されない旨の回答を頂きましたが、 沖電気様本来のドライバーは正常に動作するので、 ドライバーの入替えがうまくいっていなかったのか も知れません。再度確認はしていません。 // Keep PDO/TopOfStackDeviceObject // deviceExtension = deviceObject->DeviceExtension; deviceObject->Flags &= ~DO_DEVICE_INITIALIZING; // Initialize Completed deviceObject->Flags |= DO_DIRECT_IO; // Direct I/O deviceObject->Flags |= DO_POWER_PAGABLE; // r1.1 flag added deviceExtension->PhysicalDeviceObject=PhysicalDeviceObject; // Keep PDO deviceExtension->TopOfStackDeviceObject = IoAttachDeviceToDeviceStack(deviceObject, PhysicalDeviceObject); // Attach FDO to 以上です。