DIF_TROUBLESHOOTER
A solicitação DIF_TROUBLESHOOTER permite que um instalador inicie uma solução de problemas para um dispositivo ou retorne arquivos de solução de problemas CHM e HTM para o Windows iniciar.
Nota Esse código DIF só tem suporte no Windows Server 2003, Windows XP e Microsoft Windows 2000.
Quando enviado
Quando um usuário clica no botão "Solução de problemas" para um dispositivo no Gerenciador de Dispositivos.
Quem manipula
Co-instalador de classe |
Pode manipular |
Co-instalador de dispositivo |
Pode manipular |
Instalador de Classe |
Pode manipular |
Entrada do instalador
DeviceInfoSet
Fornece um identificador para o conjunto de informações do dispositivo que contém o dispositivo.
DeviceInfoData
Fornece um ponteiro para uma estrutura SP_DEVINFO_DATA que identifica o dispositivo no conjunto de informações do dispositivo.
Parâmetros de instalação do dispositivo
Há parâmetros de instalação do dispositivo (SP_DEVINSTALL_PARAMS) associados ao DeviceInfoData.
Parâmetros de instalação de classe
Uma estrutura SP_TROUBLESHOOTER_PARAMS está associada ao DeviceInfoData.
Saída do instalador
Parâmetros de instalação de classe
Um instalador pode modificar o SP_TROUBLESHOOTER_PARAMS, definindo um arquivo CHM ou HTML.
Valor retornado do instalador
Se um co-instalador não manipular essa solicitação, ele retornará NO_ERROR de sua passagem de pré-processamento.
Se um co-instalador manipular essa solicitação, ele o fará em sua passagem de pós-processamento. Se o co-instalador fornecer arquivos CHM e HTML, ele propagará o status que recebeu (provavelmente ERROR_DI_DO_DEFAULT). Se o co-instalador executar uma solução de problemas e corrigir o problema, o co-instalador retornará NO_ERROR. Se o co-instalador executar uma solução de problemas, mas não corrigir o problema, ele propagará o status recebido (ERROR_DI_DO_DEFAULT).
Se um instalador de classe fornecer um arquivo CHM e um arquivo HTML ou o instalador de classe executar uma solução de problemas, mas não corrigir o problema, o instalador de classe retornará ERROR_DI_DO_DEFAULT. Posteriormente, o Windows chamará o manipulador padrão.
Se um instalador de classe iniciar sua própria solução de problemas e corrigir o problema, o instalador de classe retornará NO_ERROR. O Windows não chamará posteriormente o manipulador padrão.
Se o instalador de classe encontrar um erro, o instalador retornará um código de erro Win32 apropriado. O Windows não chamará posteriormente o manipulador padrão.
Manipulador de código DIF padrão
Nenhum
Não há nenhum manipulador padrão para DIF_TROUBLESHOOTER, mas o sistema operacional fornece solucionadores de problemas padrão que tentam resolve problemas do dispositivo se não houver solucionadores de problemas fornecidos pelo instalador.
Operação do instalador
Um instalador chama CM_Get_DevNode_Status para obter o status do dispositivo e o código de problema do CM. Dependendo do problema, um instalador pode fornecer uma solução de problemas, um arquivo de ajuda ou nada. Uma solução de problemas pode resolve um problema com um dispositivo. Se uma solução de problemas resolver o problema, ele deverá chamar SetupDiCallClassInstaller para enviar uma solicitação DIF_PROPERTYCHANGE do tipo DICS_PROPCHANGE. Se um instalador não fornecer uma solução de problemas para um dispositivo, ele poderá fornecer um arquivo de ajuda de sugestões de solução de problemas para o usuário.
Se nenhum instalador executar sua própria solução de problemas, o Windows executará a Ajuda HTML para exibir informações ao usuário. Se um instalador forneceu um arquivo CHM nos parâmetros de instalação de classe, o Windows exibirá esse arquivo. Caso contrário, o Windows exibirá informações de solução de problemas fornecidas pelo sistema.
Os parâmetros de instalação de classe contêm no máximo um par ChmFile e HtmlTroubleShooter . Se mais de um instalador especificar esses valores, o Windows usará os valores definidos pelo último instalador que lidou com a solicitação DIF.
Para obter mais informações sobre códigos DIF, consulte Manipulando códigos DIF.
Requisitos
Versão |
Com suporte no Windows Server 2003, Windows XP e Microsoft Windows 2000. |
Cabeçalho |
Setupapi.h (inclua Setupapi.h) |