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
呼び出し元が指定した変数へのポインター。この関数は、呼び出しの状態を次のいずれかの値として返します。
[out] ParameterValue
NDIS が へのポインターを提供するメモリの場所へのポインターNdisReadConfiguration の呼び出しが成功した場合は、構造体をNDIS_CONFIGURATION_PARAMETERします。 NDIS は、 のメモリを割り当てます。 NDIS_CONFIGURATION_PARAMETER 構造体。
[in] ConfigurationHandle
NdisOpenConfigurationEx によって返されたレジストリ キーへのハンドル。 NdisOpenConfigurationKeyByIndex、または NdisOpenConfigurationKeyByName 関数。
[in] Keyword
呼び出し元が指定したNDIS_STRING型へのポインター。システムの既定の文字セットで、値を返す開いているレジストリ キーの下にあるエントリの名前を指定して、カウントされた文字列を記述します。
または、呼び出し元から提供されたへのポインター NDIS_STRING_CONSTANT、定義済みの戻り値と共に、次の定義済みのエントリ名のいずれかを指定します。
定義済みのエントリ名 | 定義済みの戻り値 |
---|---|
ProcessorType |
|
NdisVersion | 0xMMMMmm。 MMMM はメジャー バージョン、 mmmm はマイナー バージョン番号です。 たとえば、0x00050000は、システムでサポートされている最も高い NDIS バージョンがメジャー バージョン 5、マイナー バージョン 0 であることを示します。 |
[in] ParameterType
NDIS_PARAMETER_TYPE列挙値の 1 つとして指定される値エントリの型。 このパラメーターは、Windows NT 以降のバージョンでは無視されます。
戻り値
なし
解説
Windows 2000 以降のバージョンの構成レジストリでは、NDIS キーワード (keyword)は値のエントリ名のシノニムです。 このような名前は、 NULL で終わる Unicode 文字のカウントされたシーケンスです。
すべての NDIS ドライバーは、INF ファイルの AddReg ディレクティブを使用して、レジストリ自体の構成情報を設定できます。 たとえば、プロトコル ドライバーは、 への呼び出しで渡すことができる書式設定済みの文字列値を持つエントリとして独自の名前を格納する場合があります。 NdisRegisterProtocolDriver 関数。 詳細については、「 Add-registry-sections in a Network INF File」を参照してください。
各ミニポート ドライバーには、レジストリ内の値エントリも関連付けられています。 特定のミニポート ドライバーの値エントリは、本質的にデバイスに依存できます。 たとえば、ミニポート ドライバーには、*FlowControl、*SpeedDuplex、*InterruptModeration などのキーワードが含まれる場合があります。 このような NDIS キーワード (keyword)に関連付けられている値には、整数 (ULONG 型) または文字列 (NDIS_STRING 型) のいずれかを指定できます。 たとえば、既に言及されている *FlowControl エントリに使用できる値のセットは、 NdisParameterInteger 値 0、1、2、または 3、または NdisParameterHexInteger 値として 16 進数の同等の値です。
NdisReadConfiguration は、呼び出し元が指定した文字列を Keyword にバッファーしてコピーし、呼び出し元に制御を返す前に、このコピーに割り当てるストレージを解放します。 に割り当てるメモリ ドライバー が NdisCloseConfiguration 関数を使用して ConfigurationHandle を解放すると、NDIS_CONFIGURATION_PARAMETER構造体が解放されます。 NdisReadConfiguration の呼び出し元は、Keyword でバッファーされた文字列を解放します。
NDIS は、ドライバーがレジストリから読み取る値を検証しないことに注意してください。 したがって、 NdisReadConfiguration の呼び出し元は、このような値について何も想定せず、レジストリから読み取られた各値を検証する必要があります。 呼び出し元が値が範囲外であると判断した場合は、代わりに既定値を使用する必要があります。
セットアップ ファイルとインストール ファイルの詳細については、「 デバイスのインストールの概要」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista の NDIS 6.0 および NDIS 5.1 ドライバー (NdisReadConfiguration (NDIS 5.1) を参照) でサポートされています。 Windows XP の NDIS 5.1 ドライバー (NdisReadConfiguration (NDIS 5.1) を参照) でサポートされています。 |
対象プラットフォーム | ユニバーサル |
Header | ndis.h (Ndis.h を含む) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | Irql_Miscellaneous_Function(ndis) |