다음을 통해 공유


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 열거형 값 중 하나로 지정된 값 항목의 형식입니다. 이 매개 변수는 Windows NT 이상 버전에서 무시됩니다.

반환 값

없음

설명

Windows 2000 이상 버전의 구성 레지스트리에서 NDIS 키워드(keyword)값 항목 이름의 동의어입니다. 이러한 이름은 NULL로 종료되는 유니코드 문자의 계산된 시퀀스입니다.

모든 NDIS 드라이버는 INF 파일의 AddReg 지시문을 사용하여 레지스트리에서 구성 정보를 설정할 수 있습니다. 예를 들어 프로토콜 드라이버는 에 대한 호출에서 전달할 수 있는 미리 서식이 지정된 문자열 값이 있는 항목으로 자체 이름을 저장할 수 있습니다. NdisRegisterProtocolDriver 함수. 자세한 내용은 네트워크 INF 파일의 추가 레지스트리 섹션을 참조하세요.

각 미니포트 드라이버에는 레지스트리에 연결된 값 항목도 있습니다. 특정 미니포트 드라이버에 대한 값 항목은 본질적으로 디바이스에 종속될 수 있습니다. 예를 들어 미니포트 드라이버에는 *FlowControl, *SpeedDuplex 및 *InterruptModeration과 같은 키워드가 있을 수 있습니다. 이러한 NDIS 키워드(keyword) 연결된 값은 정수(ULONG 형식) 또는 문자열(NDIS_STRING-type)일 수 있습니다. 예를 들어 이미 언급된 *FlowControl 항목에 대해 가능한 값 집합은 NdisParameterInteger 값 0, 1, 2 또는 3이거나 16진수의 해당 값이 NdisParameterHexInteger 값일 수 있습니다.

NdisReadConfiguration은 키워드 에서 호출자가 제공한 문자열을 버퍼링하고 복사하고 호출자에게 컨트롤을 반환하기 전에 이 복사본에 할당하는 스토리지를 해제합니다. 에 할당하는 메모리 드라이버NdisCloseConfiguration 함수를 사용하여 ConfigurationHandle을 해제하면 NDIS_CONFIGURATION_PARAMETER 구조가 해제됩니다. 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