私はWDK7 Toasterのバスデバイスと子デバイスが同じ.sysドライバファイルを共有しようとしています。 busenum.sysとtoaster.sysを1つのNls_ufcom.sys(bus.infとtoaster.infは両方ともサービスバイナリと同じNls_ufcom.sysを参照しています)に結合しますが、Windowsは子デバイスのエラー38(CM_PROB_DRIVER_FAILED_PRIOR_UNLOAD)私はデバイスマネージャからドライバとしてtoaster.infを割り当てます。したがって、AddDevice()コールバックは子デバイスに対しても呼び出されません。同じ.sysドライバファイルを共有する2つの異なるクラスのWindowsデバイスを持つことは可能ですか?
私は何か間違ったことをしているのか、Windowsは本当にこれを許可していないのか分かりません。あなたから何か考えてもらいたい、ありがとう。
私の経験では、WDFは開発者が複数のデバイスセットアップクラス用の単一のファンクションドライバを作成しないようにしています。 1つのデバイスクラス用のINFファイルを含むドライバの複数のコピーをいつでもインストールできます。また、ロジック全体を、生のPDO(ファンクションドライバを必要としないPDO)を生成する(仮想)バスドライバに入れることもできます。複数のデバイスクラスの下位/上位フィルタとして動作するドライバを作成できます。 –