Compartilhar via


Definindo parâmetros de Device-Specific

Espera-se que a maioria dos dispositivos NDIS remotos funcione bem sem a necessidade de configurar parâmetros no host. No entanto, pode haver casos em que a operação de rede adequada requer alguma configuração no host. Se o dispositivo der suporte a parâmetros configuráveis, ele deverá incluir o seguinte OID opcional na lista de OIDs com suporte que relata em resposta a uma consulta para OID_GEN_SUPPORTED_LIST:

#define OID_GEN_RNDIS_CONFIG_PARAMETER 0x0001021B

Se o dispositivo der suporte ao OID OID_GEN_RNDIS_CONFIG_PARAMETER , o host o usará para definir parâmetros específicos do dispositivo, logo após o dispositivo entrar em um estado inicializado pelo NDIS Remoto do estado não inicializado. O host enviará zero ou mais REMOTE_NDIS_SET_MSGs para o dispositivo, com OID_GEN_RNDIS_CONFIG_PARAMETER como o valor OID a ser definido. Cada REMOTE_NDIS_SET_MSG corresponde a um parâmetro específico do dispositivo configurado no host.

O InformationBuffer associado a cada REMOTE_NDIS_SET_MSG tem o seguinte formato. Observe que os valores offset são relativos ao início do buffer de informações.

Deslocamento Tamanho Campo Descrição

0

4

ParameterNameOffset

Especifica o deslocamento de bytes do início do campo ParameterNameOffset no qual uma cadeia de caracteres Unicode que representa o nome do parâmetro está localizada. A cadeia de caracteres não inclui um terminador NULL.

4

4

ParameterNameLength

Especifica o comprimento do byte da cadeia de caracteres de nome do parâmetro.

8

4

ParameterType

Especifica o tipo de dados do valor do parâmetro. Este é um dos seguintes: 0 – valor numérico; 2 – valor da cadeia de caracteres.

12

4

ParameterValueOffset

Especifica o deslocamento de bytes do início do campo ParameterNameOffset no qual o valor do parâmetro está localizado.

16

4

ParameterValueLength

Especifica o comprimento do byte do valor do parâmetro.

O dispositivo envia um REMOTE_NDIS_SET_CMPLT em resposta a cada REMOTE_NDIS_SET_MSG, depois de aplicar o valor do parâmetro. Se a configuração de parâmetro for aceitável, ela retornará uma status de RNDIS_STATUS_SUCCESS na resposta. Se a configuração de parâmetro não for aceitável e o dispositivo não puder aplicar um valor padrão útil para esse parâmetro, o dispositivo retornará um erro apropriado status valor (consulte a seção sobre valores de status). Se um erro status for retornado, o host iniciará um processo de interrupção para o dispositivo.

Espera-se que parâmetros específicos do dispositivo sejam configurados no Registro do Windows. As chaves que definem valores de parâmetro normalmente são criadas no registro durante o processo de instalação do dispositivo. A lista de chaves, informações de tipo, valores padrão e intervalo opcional de valores válidos são especificados no arquivo INF do dispositivo. Para obter mais informações sobre como usar um INF para configurar parâmetros de configuração no Registro para dispositivos de rede, consulte o DDK (Kit de Desenvolvimento de Driver) do Windows 2000.