Condividi tramite


Funzione NdisReadConfiguration (ndis.h)

La funzione NdisReadConfiguration restituisce il valore di una voce denominata del tipo specificato dal Registro di sistema, dato l'handle a una chiave del Registro di sistema aperta. Questa funzione deve essere richiamata serialmente rispetto a se stessa e alla funzione NdisWriteConfiguration.

Sintassi

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

Parametri

[out] Status

Puntatore a una variabile fornita dal chiamante in cui questa funzione restituisce lo stato della chiamata come uno dei valori seguenti.

Valore Significato
NDIS_STATUS_SUCCESS
Il buffer in corrispondenza ParameterValue contiene le informazioni di configurazione restituite.
NDIS_STATUS_RESOURCES
NDIS non è riuscito ad allocare risorse, in genere memoria sufficiente, per restituire le informazioni richieste.
NDIS_STATUS_FAILURE
Impossibile trovare le informazioni richieste nella chiave del Registro di sistema aperta designata dal ConfigurationHandle.

[out] ParameterValue

Puntatore a una posizione di memoria in cui NDIS fornisce un puntatore a un NDIS_CONFIGURATION_PARAMETER struttura se la chiamata a NdisReadConfiguration ha esito positivo. NDIS alloca memoria per l'oggetto NDIS_CONFIGURATION_PARAMETER struttura.

[in] ConfigurationHandle

Handle di una chiave del Registro di sistema restituita dal NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndexo funzione NdisOpenConfigurationKeyByName.

[in] Keyword

Puntatore a un chiamante fornito NDIS_STRING tipo che descrive una stringa con conteggiata, nel set di caratteri predefinito del sistema, specificando il nome della voce sotto la chiave del Registro di sistema aperta per cui restituire il valore.

In alternativa, puntatore a un chiamante fornito NDIS_STRING_CONSTANT specificando uno dei nomi di voce predefiniti seguenti insieme ai valori restituiti predefiniti:

Nome voce predefinito Valori restituiti predefiniti
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
Di seguito è possibile solo se un driver precedente (pre-NDIS 6.0):
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmmmm, dove MMMM è la versione principale e mmmm è il numero di versione secondario. Ad esempio, 0x00050000 indica che la versione NDIS più elevata supportata dal sistema è la versione principale 5, secondaria 0.

[in] ParameterType

Tipo della voce di valore specificata come uno dei valori di enumerazione NDIS_PARAMETER_TYPE. Questo parametro viene ignorato in Windows NT e versioni successive.

Valore restituito

Nessuno

Osservazioni

Nel Registro di sistema di configurazione di Windows 2000 e versioni successive, una parola chiave NDIS è un sinonimo di un nome di voce di valore . Tale nome è una sequenza con conteggiata di caratteri Unicode, terminata con un NULL.

Ogni driver NDIS può configurare le informazioni di configurazione nel Registro di sistema per se stesso usando la direttiva AddReg nel relativo file INF. Ad esempio, un driver di protocollo potrebbe archiviare il proprio nome come voce con un valore stringa preformattato che può essere passato nelle chiamate a funzione NdisRegisterProtocolDriver. Per altre informazioni, vedere add-registry-sections in a Network INF File.

Ogni driver miniport include anche voci di valore associate nel Registro di sistema. Le voci di valore per qualsiasi particolare driver miniport possono dipendere dalla natura del dispositivo. Ad esempio, un driver miniport potrebbe avere parole chiave come *FlowControl, *SpeedDuplex e *InterruptModeration. Il valore associato a tale parola chiave NDIS può essere un numero intero (tipo ULONG) o una stringa (NDIS_STRING-type). Ad esempio, il set di valori possibili per la voce *FlowControl già menzionata potrebbe essere NdisParameterInteger valori 0, 1, 2 o 3 oppure gli equivalenti in esadecimale come valori NdisParameterHexInteger.

NdisReadConfiguration esegue il buffer e copia la stringa fornita dal chiamante in Parola chiave e rilascia lo spazio di archiviazione allocato per questa copia prima di restituire il controllo al chiamante. Memoria allocata per l'oggetto NDIS_CONFIGURATION_PARAMETER struttura viene liberata quando il driver rilascia ConfigurationHandle con la funzione NdisCloseConfiguration. Il chiamante di NdisReadConfiguration è responsabile del rilascio della stringa memorizzata nel buffer in Parola chiave.

Si noti che NDIS non convalida i valori letti da un driver dal Registro di sistema. Il chiamante di NdisReadConfiguration non deve pertanto fare ipotesi su tali valori e deve convalidare ogni valore letto dal Registro di sistema. Se il chiamante determina che un valore non è compreso nei limiti, deve usare invece un valore predefinito.

Per altre informazioni sui file di installazione e installazione, vedere Panoramica dell'installazione dei dispositivi .

Fabbisogno

Requisito Valore
client minimo supportato Supportato per i driver NDIS 6.0 e NDIS 5.1 (vedere NdisReadConfiguration (NDIS 5.1) in Windows Vista. Supportato per i driver NDIS 5.1 (vedere NdisReadConfiguration (NDIS 5.1)) in Windows XP.
piattaforma di destinazione Universale
intestazione ndis.h (include Ndis.h)
libreria Ndis.lib
IRQL PASSIVE_LEVEL
regole di conformità DDI Irql_Miscellaneous_Function(ndis)

Vedere anche

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING