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. |