Criando extensões de classe auxiliar do NDF
Este tópico destina-se a fornecer diretrizes genéricas por meio do processo de desenvolvimento de extensão de classe auxiliar. As diretrizes neste tópico se aplicam a todas as extensões de classe auxiliar. Para obter diretrizes mais específicas, consulte Classe Auxiliar Extensível da Plataforma de Filtragem do Windows e Classes auxiliares extensíveis de diagnóstico sem fio 802.11.
Estendendo a funcionalidade do NDF
O Windows Vista e versões posteriores são fornecidos com uma variedade de classes auxiliares já implementadas que podem diagnosticar e reparar uma ampla variedade de problemas. Às vezes, no entanto, os desenvolvedores de terceiros podem querer estender essas classes auxiliares para diagnosticar e resolve problemas específicos para seus produtos e implementações específicos.
As seguintes classes auxiliares do Microsoft NDF são extensíveis.
Implementando uma extensão de classe auxiliar
A Microsoft fornece duas interfaces que podem ser usadas para desenvolver extensões de classe auxiliar do NDF.
A interface INetDiagHelperInfo é chamada pelo NDF para validar se ela tem todas as informações necessárias e que escolheu a classe auxiliar correta. Ele faz isso por meio do método GetAttributeInfo .
A interface INetDiagHelper é chamada pelo NDF para a maioria das atividades que ocorrem durante o procedimento de diagnóstico. Vários de seus métodos são necessários, mas outros são opcionais para usos específicos.
Os métodos necessários incluem Initialize e GetDiagnosticsInfo. O NDF chama Initialize para enviar parâmetros de chave para a extensão de classe auxiliar para inicializar seu estado de instância. GetDiagnosticsInfo fornece uma estimativa de quanto tempo o diagnóstico pode levar e se ele requer representação do contexto de usuário original.
Outro método, LowHealth, é chamado para executar o diagnóstico no componente de rede correspondente à classe auxiliar. Cancel é chamado quando o NDF determina que um diagnóstico ou reparo contínuo deve ser interrompido. A limpeza permite que o NDF libere recursos NDF que a extensão de classe auxiliar usou desde que a chamada para Initialize foi feita.
Para obter informações sobre métodos adicionais, consulte INetDiagHelper.
As extensões de classe auxiliar do NDF são usadas para diagnosticar e resolve problemas de conectividade associados a um aplicativo ou componente específico. Eles também validam o êxito ou a falha de uma tentativa de resolução.
Os desenvolvedores que consideram a implementação de uma extensão de classe auxiliar devem executar as tarefas a seguir.
- Identifique cenários de usuário nos quais ações de diagnóstico e reparo são úteis.
- Forneça resoluções para problemas de conectividade frequentemente encontrados.
- Se uma extensão de classe auxiliar for necessária, defina um modelo de integridade do componente usado para representar o estado de integridade do componente no NDF.
Identificar cenários de usuário
O teste e o uso de um aplicativo podem já ter fornecido padrões perceptíveis que uma extensão de classe auxiliar pode ser capaz de diagnosticar e possivelmente reparar. Os desenvolvedores de aplicativos podem usar esses dados para determinar os problemas de conectividade mais importantes a serem resolvidos e identificar os cenários de usuário nos quais os problemas de conectividade provavelmente ocorrerão.
Determinar a causa raiz de cada problema é vital nesta parte do processo. Isso pode exigir uma pesquisa abrangente, mas ajudará a criar um software muito mais fácil para os usuários e administradores usarem. Se uma causa raiz não for identificada, será difícil ou impossível oferecer resolução de problemas usando a extensão de classe auxiliar.
Fornecer Resoluções
Depois que uma equipe de desenvolvimento identificar as causas raiz dos problemas associados ao software, a próxima etapa é identificar as ações de resolução apropriadas para ajudar o usuário a resolver o problema da forma mais eficiente possível.
Nem todas as resoluções exigem que uma extensão de classe auxiliar ou uma ação automatizada seja criada. Em alguns casos, a equipe pode determinar que a melhor abordagem para resolver uma causa raiz é corrigir ou atualizar o componente, fornecer conteúdo de ajuda adicional para o componente ou desenvolver outras estratégias que forneçam melhores soluções de longo prazo.
Para problemas em que uma ação automatizada é ideal, criar uma extensão de classe auxiliar do NDF geralmente é uma excelente solução.
As extensões de classe auxiliar retornam informações sobre causas raiz e informações de reparo aos usuários por meio do NDF. As cadeias de caracteres usadas para descrever as causas raiz e as informações de reparo devem ser simples e fáceis de entender para um usuário não técnico. Para obter mais informações sobre essas cadeias de caracteres, consulte Diretrizes de interface do usuário para extensões de classe auxiliar do NDF.
Definir um modelo de integridade do componente
Os desenvolvedores de software devem definir níveis de "integridade" associados à capacidade de gerenciamento de problemas de rede. Um modelo de integridade usado para desenvolver classes auxiliares define apenas dois níveis de saúde: íntegro e não íntegro. Esses níveis também podem ser aplicados a extensões de classe auxiliar do NDF.
Um componente íntegro indica uma ausência de problemas. Um componente pode ser considerado não íntegro devido a seus próprios problemas ou devido a problemas que ocorrem em outros componentes dos quais ele depende.
Termo | Descrição |
---|---|
LowHealth |
Esse estado indica um nível inaceitável de falhas desse componente e que o componente é o problema. |
LowHealth Abaixo |
Esse estado indica um nível inaceitável de falhas de um componente de computador local do qual esse componente depende. |
Quando o diagnóstico ocorre usando o NDF, a extensão de classe auxiliar é feita uma série de perguntas para determinar seu estado de saúde. Se a extensão responder que não está íntegra, o NDF fará perguntas esclarecedoras, tentando diagnosticar o problema, sua localização e onde procurar em seguida. Cada classe auxiliar deve ser capaz de responder à pergunta de baixa integridade para direcionar melhor as atividades de diagnóstico apropriadas.