次の方法で共有


PCMCIA_INTERFACE_STANDARD インターフェイスを取得する

このセクションでは、ドライバーが PCMCIA バス ドライバーから PCMCIA メモリ カードの PCMCIA_INTERFACE_STANDARD インターフェイスを取得する方法について説明します。

ドライバーは、マイナー関数コードを指定する IRP_MN_QUERY_INTERFACE 要求を作成して送信することで PCMCIA_INTERFACE_STANDARD インターフェイスを取得します。 ドライバーは、次の操作を実行します。

  • ページ メモリ プール内の PCMCIA_INTERFACE_STANDARD インターフェイス メモリ カード ルーチン構造体を割り当てて、ゼロフィルします。

  • クエリ インターフェイス要求の IRP を作成して、新しい IRP の次のスタックの場所を取得します。

  • 新しいスタックの場所に、次のメンバーを設定します。

    • Parameters.QueryInterface.Interface メンバーは、ドライバーによって割り当てられた、ドライバー割り当て PCMCIA_INTERFACE_STANDARD 構造体を指します。
    • Parameters.QueryInterface.InterfaceType メンバーは、GUID 値 GUID_PCMCIA_INTERFACE_STANDARD によって標準の PCMCIA インターフェイスを指定します。
  • 完了ルーチンを設定し、要求をドライバー スタックに送信します。

要求が成功すると、PCMCIA バス ドライバーは、Parameters.QueryInterface.Interface が指す PCMCIA_INTERFACE_STANDARD 構造体を設定します。

ドライバーは、この要求をドライバー スタックに送信するために IRQL < DISPATCH_LEVEL で実行されている必要があります。