次の方法で共有


NdisReadConfiguration 関数 (ndis.h)

NdisReadConfiguration 関数は、開いているレジストリ キーへのハンドルを指定して、指定した型の名前付きエントリの値をレジストリから返します。 この関数は、それ自体と NdisWriteConfiguration 関数に対して順次呼び出す必要があります。

構文

void NdisReadConfiguration(
  [out] PNDIS_STATUS                  Status,
  [out] PNDIS_CONFIGURATION_PARAMETER *ParameterValue,
  [in]  NDIS_HANDLE                   ConfigurationHandle,
  [in]  PNDIS_STRING                  Keyword,
  [in]  NDIS_PARAMETER_TYPE           ParameterType
);

パラメーター

[out] Status

呼び出し元が指定した変数へのポインター。この関数は、呼び出しの状態を次のいずれかの値として返します。

価値 意味
NDIS_STATUS_SUCCESS
ParameterValue のバッファーには、返された構成情報が含まれています。
NDIS_STATUS_RESOURCES
NDIS は、要求された情報を返すためにリソース (通常は十分なメモリ) を割り当てませんでした。
NDIS_STATUS_FAILURE
要求された情報が、ConfigurationHandleによって指定された開かれたレジストリ キーの下に見つかりませんでした。

[out] ParameterValue

NDIS がポインターを提供するメモリ位置へのポインターNdisReadConfiguration の呼び出し 成功した場合は、構造体 NDIS_CONFIGURATION_PARAMETER します。 NDIS は、メモリを割り当てます。 NDIS_CONFIGURATION_PARAMETER 構造体。

[in] ConfigurationHandle

NdisOpenConfigurationExによって返されたレジストリ キーへのハンドル。NdisOpenConfigurationKeyByIndex します。またはNdisOpenConfigurationKeyByName 関数を します。

[in] Keyword

システムの既定の文字セット内のカウントされた文字列を記述する呼び出し元が指定したNDIS_STRING型へのポインター。値を返す開いているレジストリ キーの下のエントリの名前を指定します。

または、呼び出し元が指定したNDIS_STRING_CONSTANTへのポインター。定義済みの戻り値と共に、次の定義済みのエントリ名のいずれかを指定します。

定義済みのエントリ名 定義済みの戻り値
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
以下は、古い (NDIS 6.0 より前の) ドライバーの場合にのみ可能です。
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmm。MMMM はメジャー バージョンで、mmmm はマイナー バージョン番号です。 たとえば、0x00050000は、システムでサポートされている最も高い NDIS バージョンがメジャー バージョン 5、マイナー バージョン 0 であることを示します。

[in] ParameterType

NDIS_PARAMETER_TYPE 列挙値の 1 つとして指定される値エントリの型。 このパラメーターは、Windows NT 以降のバージョンでは無視されます。

戻り値

何一つ

備考

Windows 2000 以降のバージョンの構成レジストリでは、NDIS キーワード は、値のエントリ名のシノニムです。 このような名前は、NULLで終わる Unicode 文字のカウントシーケンスです。

すべての NDIS ドライバーは、INF ファイル内の AddReg ディレクティブを使用して、レジストリ自体の構成情報を設定できます。 たとえば、プロトコル ドライバーは、前もって書式設定された文字列値を持つエントリとして独自の名前を格納できます。この値は、次の呼び出しで渡すことができます。NdisRegisterProtocolDriver 関数を します。 詳細については、「ネットワーク INF ファイル の add-registry-sections をする」を参照してください。

各ミニポート ドライバーには、レジストリ内の値エントリも関連付けられています。 特定のミニポート ドライバーの値エントリは、本質的にデバイスに依存できます。 たとえば、ミニポート ドライバーには、*FlowControl、*SpeedDuplex、*InterruptModeration などのキーワードが含まれる場合があります。 このような NDIS キーワードに関連付けられている値には、整数 (ULONG 型) または文字列 (NDIS_STRING 型) のいずれかを指定できます。 たとえば、既に説明した *FlowControl エントリに使用できる値のセットは、NdisParameterInteger 値 0、1、2、または 3 を するか、NdisParameterHexInteger 16 進数で指定できます。

NdisReadConfiguration バッファーし、キーワード で呼び出し元が指定した文字列をコピーし、呼び出し元に制御を返す前に、このコピーに割り当てる記憶域を解放します。 割り当てるメモリ NDIS_CONFIGURATION_PARAMETER 構造体は、ドライバーが NdisCloseConfiguration 関数を使用して ConfigurationHandle を解放すると解放されます。 NdisReadConfiguration の呼び出し元は、キーワードでバッファー内の文字列を解放します。

NDIS は、ドライバーがレジストリから読み取る値を検証しないことに注意してください。 そのため、NdisReadConfiguration の呼び出し元は、このような値に関する想定を行わず、レジストリから読み取られた各値を検証する必要があります。 呼び出し元が値が範囲外であると判断した場合は、代わりに既定値を使用する必要があります。

セットアップ ファイルとインストール ファイルの詳細については、「デバイス インストールの概要」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista の NDIS 6.0 および NDIS 5.1 ドライバー (NdisReadConfiguration (NDIS 5.1) を参照) でサポートされています。 Windows XP の NDIS 5.1 ドライバー (NdisReadConfiguration (NDIS 5.1) を参照) でサポートされています。
ターゲット プラットフォーム 万国
ヘッダー ndis.h (Ndis.h を含む)
ライブラリ Ndis.lib
IRQL PASSIVE_LEVEL
DDI コンプライアンス規則 する Irql_Miscellaneous_Function(ndis)

関連項目

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName をする

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING