次の方法で共有


NdisMAllocatePort 関数 (ndis.h)

NdisMAllocatePort 関数は、ミニポート アダプターに関連付けられている NDIS ポートを割り当てます。

構文

NDIS_STATUS NdisMAllocatePort(
            NDIS_HANDLE                NdisMiniportHandle,
  [in, out] PNDIS_PORT_CHARACTERISTICS PortCharacteristics
);

パラメーター

NdisMiniportHandle

NDIS が ミニポートAdapterHandle パラメーターに渡したミニポート アダプター ハンドルミニポートInitializeEx 関数を します。

[in, out] PortCharacteristics

へのポインター NDIS_PORT_CHARACTERISTICS ポートの特性を定義する構造体です。

戻り値

NdisMAllocatePort は、次のいずれかの値を返すことができます。

リターン コード 形容
NDIS_STATUS_SUCCESS
NDIS は、ポートのリソースを正常に割り当てた。
NDIS_STATUS_RESOURCES
NDIS は、ポートのリソースを割り当てませんでした。
NDIS_STATUS_CLOSING
関連付けられているミニポート アダプターが閉じているため、ポートの割り当てが失敗しました。
NDIS_STATUS_INVALID_DATA
PortCharacteristics パラメーターで指定されたデータが無効でした。

備考

NdisMAllocatePort 関数は、ミニポート アダプターに関連付けられているポートのリソースとポート番号を割り当てます。 ポートは、ミニポート ドライバーがポートの NetEventPortActivation プラグ アンド プレイ (PnP) イベントを発行するまでアクティブではありません。

ミニポート ドライバーがポートをアクティブ化した後、NDIS は、上にあるドライバーの PnP 通知を生成します。 基になるドライバーまたはユーザー モード アプリケーションがミニポート アダプターのポートを列挙する OID_GEN_ENUMERATE_PORTS OID を発行する場合、NDIS は、ポートの一覧に非アクティブな割り当てられたポートを含まれません。

NdisMAllocatePort 正常に返されると、の PortNumber メンバーが返されます。 PortCharacteristics パラメーターが指定する NDIS_PORT_CHARACTERISTICS 構造体は、NDIS がポートに割り当てたポート番号に設定されます。

ポートが不要になった後、ミニポート ドライバーは、ポートを解放する NdisMFreePort 関数を呼び出す必要があります。

必要条件

要件 価値
サポートされる最小クライアント NDIS 6.0 以降でサポートされています。
ターゲット プラットフォーム 万国
ヘッダー ndis.h (Ndis.h を含む)
ライブラリ Ndis.lib
IRQL <= DISPATCH_LEVEL

関連項目

NDIS ポート を割り当てる

ミニポートInitializeEx

NDIS_PORT_CHARACTERISTICS

NdisMFreePort する

OID_GEN_ENUMERATE_PORTS