Partilhar via


estrutura WWAN_REGISTRATION_STATE (wwan.h)

A estrutura WWAN_REGISTRATION_STATE representa o estado de registro do dispositivo MB.

Sintaxe

typedef struct _WWAN_REGISTRATION_STATE {
  ULONG               uNwError;
  WWAN_REGISTER_STATE RegisterState;
  WWAN_REGISTER_MODE  RegisterMode;
  WCHAR               ProviderId[WWAN_PROVIDERID_LEN];
  WCHAR               ProviderName[WWAN_PROVIDERNAME_LEN];
  WCHAR               RoamingText[WWAN_ROAMTEXT_LEN];
  DWORD               WwanRegFlags;
  WWAN_CELLULAR_CLASS CurrentCellularClass;
  ULONG               PreferredDataClasses;
} WWAN_REGISTRATION_STATE, *PWWAN_REGISTRATION_STATE;

Membros

uNwError

Um erro específico da rede, no caso de uma falha de registro. Para obter mais informações sobre esse membro, consulte a seção "Comentários" a seguir.

RegisterState

O estado de registro do dispositivo. Para obter uma lista de valores definidos, consulte WWAN_REGISTER_STATE.

O valor WwanRegisterStatePartner indica que o dispositivo está em roaming em um provedor de rede de parceiro preferencial, enquanto valor de WwanRegisterStateRoaming indica que o dispositivo está apenas em roaming. Se a caracterização do parceiro do estado de roaming não estiver disponível, o driver de miniporto deverá relatar WwanRegisterStateRoaming.

RegisterMode

O modo de registro do dispositivo. Para obter uma lista de valores definidos, consulte WWAN_REGISTER_MODE.

ProviderId[WWAN_PROVIDERID_LEN]

Uma cadeia de caracteres numérica terminada em NULL (0-9) que representa a identidade do provedor de rede.

Para redes baseadas em GSM, essa cadeia de caracteres é uma concatenação de um MCC (Mobile Country Code) de três dígitos e um MNC (Código de Rede Móvel) de dois ou três dígitos. As operadoras baseadas em GSM podem ter mais de um MNC e, portanto, mais de um ProviderId .

Para redes baseadas em CDMA, essa cadeia de caracteres é uma SID (ID do Sistema) de cinco dígitos. Em geral, uma operadora baseada em CDMA tem mais de um SID. Normalmente, uma transportadora tem um SID para cada mercado, que geralmente é dividido geograficamente dentro de uma nação por regulamentos, como áreas estatísticas metropolitanas (MSA) nos Estados Unidos da América. Os drivers de miniport de dispositivos baseados em CDMA devem especificar WWAN_CDMA_DEFAULT_PROVIDER_ID se essas informações não estiverem disponíveis.

Ao processar uma consulta solicitação e o estado de registro estiver no modo de registro automático, esse membro contém a ID do provedor à qual o dispositivo está associado no momento (se aplicável). Quando o estado de registro está no modo de registro manual, esse membro contém a ID do provedor com a qual o dispositivo é solicitado a se registrar (mesmo que o provedor não esteja disponível).

Ao processar um conjunto de solicitação e o estado de registro estiver no modo manual, isso contém a ID do provedor selecionada pelo Serviço MB para o dispositivo se registrar. Quando o estado de registro está no modo de registro automático, esse parâmetro é ignorado.

Os provedores CDMA 1xRTT devem ser definidos como WWAN_CDMA_DEFAULT_PROVIDER_ID se a ID do provedor não estiver disponível.

ProviderName[WWAN_PROVIDERNAME_LEN]

Uma cadeia de caracteres terminada em NULL que representa o nome do provedor de rede. Esse membro é limitado a, no máximo, WWAN_PROVIDERNAME_LEN caracteres.

Para redes baseadas em GSM, se a apresentação preferencial de iniciais de país e nome de rede móvel (PPCI&N) for maior que vinte caracteres, o driver de miniporto deverá abreviar o nome da rede.

Esse membro é ignorado quando o Serviço MB define a lista de provedores preferenciais.

Os drivers de miniporto devem especificar uma cadeia de caracteres NULL para dispositivos que não têm essas informações.

RoamingText[WWAN_ROAMTEXT_LEN]

Uma cadeia de caracteres terminada em NULL para informar ao usuário que o dispositivo está em roaming. Esse membro é limitado a, no máximo, WWAN_ROAMTEXT_LEN caracteres.

Este texto deve fornecer informações adicionais ao usuário quando o estado de registro for WwanRegisterStatePartner ou WwanRegisterStateRoaming. Esse membro é opcional.

WwanRegFlags

Sinalizadores de registro.

Valor Significado
WWAN_REG_FLAGS_NONE Nenhum sinalizador de registro.
WWAN_REG_FLAGS_NO_MANUAL_REG Nenhuma anexação manual.
WWAN_REG_FLAGS_PS_AUTO_ATTACH Indica que o dispositivo MB gerencia seu próprio contexto de pacote. O Serviço MB não enviará um pacote desanexado para o driver de miniporto, mas pode enviar uma anexação de pacote.

CurrentCellularClass

A classe celular atual da rede registrada. Para redes que dão suporte apenas a uma única classe celular, esse membro deve ser definido para essa classe celular. Para redes compatíveis com vários modos, o driver de miniporto envia NDIS_STATUS_WWAN_REGISTER_STATE notificações para o serviço MB quando a rede altera sua classe celular.

PreferredDataClasses

Uma máscara de bits que representa as tecnologias de acesso a dados que são preferenciais para uma conexão.

Observações

de Consulta e definir solicitações OID, bem como eventos de status não solicitados, usam o membro uNwError. Se não houver nenhum erro específico de rede ou o erro específico da rede não for conhecido, os drivers de miniporto deverão definir esse membro como zero. A seção "Estrutura de Indicação de Status" no de Semântica Operacional de MB mostra os valores de falha de código causados pelo registro definidos no de Especificação 3GPP TS 24.008.

Os pontos a seguir fornecem diretrizes sobre como retornar um erro específico de rede em diferentes cenários:

  • Se o registro de rede falhar devido a um erro específico de rede, os drivers de miniporto deverão retornar o erro específico da rede em resposta a consulta solicitações. Nesse caso, os drivers de miniport devem definir o uStatus membro da estrutura NDIS_WWAN_REGISTRATION_STATE para WWAN_STATUS_SUCCESS e definir o membro uNwError para o código de erro específico da rede.
  • Se um conjunto de solicitação falhar, os drivers de miniport devem retornar o código de erro específico da rede. Nesse caso, os drivers de miniporto devem definir o uStatus membro da estrutura NDIS_WWAN_REGISTRATION_STATE para WWAN_STATUS_FAILURE e definir o membro uNwError para o código de erro específico da rede.
  • Sempre que o estado de registro do dispositivo for alterado porque a rede descreve o dispositivo (por exemplo, a rede cancelou o registro do dispositivo porque a assinatura do dispositivo expirou) os eventos de status não solicitados devem incluir o erro específico da rede. Nesse caso, o driver de miniporto deve definir o uStatus membro da estrutura NDIS_WWAN_REGISTRATION_STATE para WWAN_STATUS_SUCCESS e definir o membro uNwError para o código de erro específico da rede.
Para retornar um erro específico de rede ao processar solicitações de OID_WWAN_REGISTER_STATE, os drivers de miniporto devem definir o uStatus membro da estrutura NDIS_WWAN_REGISTRATION_STATE para WWAN_STATUS_FAILURE e definir o membro uNwError para o código de erro específico da rede.

Os drivers de miniport podem fornecer códigos de erro adicionais, conforme definido pela especificação de padrões GSM de códigos de erro de anexação de pacote retornados pela rede. Por exemplo, os drivers de miniporto podem comunicar os códigos de erro de anexação de pacoteS TS 24.008 de especificação 3GPP, como o código de erro 12 (área de localização não permitida), para o Serviço MB por meio do uNwError membro.

Os drivers de miniporto devem relatar o código de causa o mais cedo possível. Por exemplo, se o dispositivo MB encontrar um desses códigos ao tentar registrar o dispositivo com um provedor de rede, o driver de miniporto deverá denunciá-lo nesse momento.

Os drivers de miniporto conectados a uma rede de vários modos devem indicar a alteração da classe celular por meio de uma notificação de NDIS_STATUS_WWAN_REGISTER_STATE.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows 8 e versões posteriores do Windows.
cabeçalho wwan.h (inclua Wwan.h)

Consulte também

NDIS_WWAN_REGISTRATION_STATE

WWAN_REGISTER_MODE

WWAN_REGISTER_STATE