Compartilhar via


Códigos de erro da Atualização de Dispositivo para Hub IoT

Este documento fornece uma tabela de códigos de erro para vários componentes da Atualização de Dispositivo.

Há dois componentes principais do lado do cliente que podem gerar códigos de erro: o agente de Atualização de Dispositivo e o agente de Otimização de Entrega. Os códigos de erro também são provenientes do serviço de conteúdo de atualização do dispositivo.

Agente de Atualização de Dispositivo

ResultCode e ExtendedResultCode

Relatórios de interface PnP de Núcleo ResultCode e ExtendedResultCode da Atualização de Dispositivo para Hub IoT, que podem ser usados para diagnosticar falhas. Para saber mais sobre a interface PnP de Núcleo da Atualização de Dispositivo, consulte Atualização de Dispositivo e Plug and Play. Para obter mais informações sobre os significados padrão do ResultCode e ExtendedResultCodes do Agente de Atualização de Dispositivo, confira o Repositório do GitHub da Atualização de Dispositivo.

ResultCode é um código de status geral e ExtendedResultCode é um inteiro com informações de erro codificadas.

O ExtendedResultCode aparece como um número inteiro com sinal na interface PnP. Para decodificar ExtendedResultCode, converta o inteiro com sinal para hexadecimal sem sinal. Somente os quatro primeiros bytes de ExtendedResultCode são usados e estão no formato F FFFFFFF, em que o primeiro Nibble é o Código das Instalações e o restante dos bits são o Código de Erro.

Códigos das Instalações

Código das Instalações Descrição
D Erro gerado por meio do SDK da DO
E O código de erro é um errno

Por exemplo:

ExtendedResultCode é -536870781

A representação hexadecimal sem sinal de -536870781 é FFFFFFFF E0000083.

Ignorar Código das Instalações Código de erro
FFFFFFFF E 0000083

0x83 em hexadecimal corresponde a 131 em decimal, que é o valor de errno para ENOLCK.

Agente de Otimização de Entrega

A tabela a seguir lista os códigos de erro pertencentes ao componente de DO (Otimização de Entrega) do cliente de Atualização de Dispositivo. O componente de DO é responsável por baixar o conteúdo de atualização para o dispositivo de IoT.

O código de erro pode ser obtido examinando as exceções geradas em resposta a uma chamada à API. Todos os códigos de erro de DO podem ser identificados pelo prefixo 0x80D0.

Código de erro Erro de cadeia de caracteres Tipo Descrição
0x80D01001L DO_E_NO_SERVICE N/D A Otimização de Entrega não pôde fornecer o serviço
0x80D02002L DO_E_DOWNLOAD_NO_PROGRESS Baixar trabalho O Download de um arquivo não progrediu durante o período definido
0x80D02011L DO_E_UNKNOWN_PROPERTY_ID Baixar trabalho SetProperty() ou GetProperty() chamadas com uma ID de propriedade desconhecida
0x80D02012L DO_E_READ_ONLY_PROPERTY Baixar trabalho Não foi possível chamar SetProperty() em uma propriedade somente leitura
0x80D02013L DO_E_INVALID_STATE Baixar trabalho A ação solicitada não é permitida no estado de trabalho atual. O trabalho poderia ter sido cancelado ou concluído a transferência. Ele está em um estado somente leitura agora.
0x80D02018L DO_E_FILE_DOWNLOADSINK_UNSPECIFIED Baixar trabalho Não é possível iniciar um download porque nenhum coletor de download (seja arquivo local ou interface de fluxo) foi especificado
0x80D02200L DO_E_DOWNLOAD_NO_URI Interface de IDODownload O download foi iniciado sem fornecer um URI
0x80D03805L DO_E_BLOCKED_BY_NO_NETWORK Condições temporárias Download pausado devido à perda de conectividade de rede
   0 00 00000     Total 4 bytes (32 bits)
   - -- -----
   | |  |
   | |  |
   | |  +---------  Error code (20 bits)
   | |
   | +------------- Component/Area code (8 bits)
   |
   +--------------- Facility code (4 bits) 

Para saber mais sobre a análise de códigos, confira Códigos de resultado estendidos e códigos de resultado do Agente de Atualização de Dispositivo ou Implementar um manipulador de conteúdo personalizado.

Serviço de conteúdo da Atualização de Dispositivo

A tabela a seguir lista os códigos de erro pertencentes ao componente de serviço de conteúdo do serviço de Atualização de Dispositivo. O componente de serviço de conteúdo é responsável por importar conteúdo de atualização. Confira mais informações de solução de problemas para importar atualizações de proxy.

Código do erro Erro de cadeia de caracteres Próximas etapas
UpdateAlreadyExists Já existe uma atualização com a mesma identidade. Verifique se você está importando uma atualização que ainda não foi importada para esta instância da Atualização de Dispositivo para Hub IoT.
DuplicateContentImport Conteúdo idêntico importado simultaneamente várias vezes. Verifique se você está importando uma atualização que ainda não foi importada para esta instância da Atualização de Dispositivo para Hub IoT.
CannotProcessImportManifest Erro ao processar o manifesto de importação. Confira a documentação de conceitos de importação e atualização de importação para uma formatação apropriada do manifesto de importação.
CannotDownload Não foi possível baixar o manifesto de importação. Verifique se a URL do arquivo de manifesto de importação ainda está válida.
CannotParse Não foi possível analisar o manifesto de importação. Verifique a precisão do seu manifesto de importação em relação ao esquema definido na documentação de atualização de importação.
UnsupportedVersion Não há suporte para a versão do esquema do manifesto de importação. Verifique se o manifesto de importação está usando o esquema mais recente definido na documentação de atualização de importação.
Erro ao importar a atualização por exceder o limite. Não é possível importar um provedor de atualização adicional. Você atingiu um limite do número de provedores diferentes permitidos em sua instância da Atualização de Dispositivo para Hub IoT. Exclua algumas atualizações da sua instância e tente novamente.
Erro ao importar a atualização por exceder o limite. Não é possível importar um nome de atualização para o provedor especificado. Você atingiu um limite para o número de nomes diferentes permitidos em um provedor de sua instância da Atualização de Dispositivo para Hub IoT. Exclua algumas atualizações da sua instância e tente novamente.
Erro ao importar a atualização por exceder o limite. Não é possível importar uma versão de atualização adicional para o provedor e o nome especificados. Você atingiu um limite para o número de versões diferentes permitidas em um provedor e em um nome de sua instância da Atualização de Dispositivo para Hub IoT. Exclua algumas atualizações com esse nome da instância e tente novamente.
Erro ao importar a atualização por exceder o limite. Não é possível importar um provedor de atualização adicional com a compatibilidade especificada.

or

Não foi possível importar um nome de atualização adicional com a compatibilidade especificada.

or

Não é possível importar uma versão de atualização adicional com a compatibilidade especificada.
Ao definir as propriedades de compatibilidade em um manifesto de importação, tenha em mente que a Atualização de Dispositivo para Hub IoT dá suporte a uma combinação exclusiva de provedor e nome para um determinado conjunto de propriedades de compatibilidade. Isso significa que você verá esses erros se tentar usar as mesmas propriedades de compatibilidade com mais de uma combinação de provedor/nome. Para resolver o problema, certifique-se de que todas as atualizações de um determinado dispositivo (conforme definido pelas propriedades de compatibilidade) usem o mesmo provedor e o mesmo nome.
CannotProcessUpdateFile Erro ao processar o arquivo de origem.
ContentFileCannotDownload Não foi possível baixar o arquivo de origem. Verifique se a URL do(s) arquivo(s) de atualização ainda está válida.
SourceFileMalwareDetected Uma assinatura de malware conhecida foi detectada em um arquivo que está sendo importado. A Atualização de Dispositivo para Hub IoT realiza varreduras em conteúdos importados em busca de malware usando diversos mecanismos. Se uma assinatura de malware conhecida for identificada, a importação falhará e será retornada uma mensagem de erro exclusiva. A mensagem de erro contém a descrição da assinatura de malware e um hash de arquivo para cada arquivo em que a assinatura foi detectada. Você pode usar o hash de arquivo para localizar o arquivo exato que está sendo sinalizado e usar a descrição da assinatura de malware para verificar o arquivo em busca de malware.

Depois de remover o malware de todos os arquivos que estão sendo importados, você poderá iniciar o processo de importação novamente.
SourceFilePendingMalwareAnalysis Uma assinatura foi detectada em um arquivo que está sendo importado, o que pode indicar que o malware está presente. A Atualização de Dispositivo para Hub IoT realiza varreduras em conteúdos importados em busca de malware usando diversos mecanismos. A importação falhará se uma assinatura de verificação apresentar características de malware, mesmo que não haja uma correspondência exata com um malware conhecido. Quando isso ocorre, uma mensagem de erro exclusiva é retornada. A mensagem de erro contém a descrição da assinatura de malware suspeita, e um hash de arquivo para cada arquivo em que a assinatura foi detectada. Você pode usar o hash de arquivo para localizar o arquivo exato que está sendo sinalizado e usar a descrição da assinatura de malware para verificar o arquivo em busca de malware.

Depois de remover o malware de todos os arquivos que estão sendo importados, é possível iniciar o processo de importação novamente. Se você tiver certeza de que seus arquivos estão livres de malware, mas continuar a ver esse erro, use o processo para Entrar em contato com o Suporte da Microsoft.

Próximas etapas

Solucionar problemas com a Atualização do Dispositivo