Udostępnij za pośrednictwem


Aktualizacja urządzenia dla kodów błędów usługi IoT Hub

Ten dokument zawiera tabelę kodów błędów dla różnych składników aktualizacji urządzeń.

Istnieją dwa podstawowe składniki po stronie klienta, które mogą zgłaszać kody błędów: agenta aktualizacji urządzeń i agenta optymalizacji dostarczania. Kody błędów pochodzą również z usługi zawartości Device Update.

Agent usługi Device Update

ResultCode i ExtendedResultCode

Aktualizacja urządzenia dla raportów ResultCode interfejsu IoT Hub Core PnP i ExtendedResultCode, które mogą służyć do diagnozowania błędów. Aby uzyskać więcej informacji na temat interfejsu PnP aktualizacji urządzeń podstawowych, zobacz Device Update and Plug and Play. Aby uzyskać więcej informacji na temat domyślnych znaczenia agenta aktualizacji urządzeń ResultCode i ExtendedResultCodes, zobacz repozytorium GitHub aktualizacji urządzenia.

ResultCode jest ogólnym kodem stanu i ExtendedResultCode jest liczbą całkowitą z zakodowanymi informacjami o błędzie.

Element ExtendedResultCode jest wyświetlany jako podpisana liczba całkowita w interfejsie PnP. Aby zdekodować wartość , przekonwertuj ExtendedResultCodepodpisaną liczbę całkowitą na niepodpisany szesnastkowy. Używane są tylko pierwsze 4 bajty ExtendedResultCode i są w postaci F FFFFFFF , w której pierwszy nibble jest kodem obiektu, a pozostałe bity są kodem błędu.

Kody obiektów

Kod obiektu opis
D Błąd zgłoszony z zestawu DO SDK
E Kod błędu jest błędem

Na przykład:

ExtendedResultCode jest -536870781

Niepodpisane reprezentacja -536870781 szesnastku to FFFFFFFF E0000083.

Ignoruj Kod obiektu Kod błędu
FFFFFFFF E 0000083

0x83 wartość szesnastkowa jest 131 wyrażona w szesnastku, czyli wartość errno dla ENOLCKelementu .

Agent optymalizacji dostarczania

W poniższej tabeli wymieniono kody błędów dotyczące składnika optymalizacji dostarczania (DO) klienta usługi Device Update. Składnik DO jest odpowiedzialny za pobieranie zawartości aktualizacji na urządzenie IoT.

Kod błędu DO można uzyskać, sprawdzając wyjątki zgłaszane w odpowiedzi na wywołanie interfejsu API. Wszystkie kody błędów DO można zidentyfikować za pomocą prefiksu 0x80D0.

Kod błędu Błąd ciągu Type Opis
0x80D01001L DO_E_NO_SERVICE nie dotyczy Optymalizacja dostarczania nie mogła zapewnić usługi
0x80D02002L DO_E_DOWNLOAD_NO_PROGRESS Zadanie pobierania Pobieranie pliku nie widziało postępu w określonym przedziale czasu
0x80D02011L DO_E_UNKNOWN_PROPERTY_ID Zadanie pobierania Właściwość SetProperty() lub GetProperty() wywoływana z nieznanym identyfikatorem właściwości
0x80D02012L DO_E_READ_ONLY_PROPERTY Zadanie pobierania Nie można wywołać właściwości SetProperty() we właściwości tylko do odczytu
0x80D02013L DO_E_INVALID_STATE Zadanie pobierania Żądana akcja nie jest dozwolona w bieżącym stanie zadania. Zadanie mogło zostać anulowane lub ukończone przeniesienie. Jest teraz w stanie tylko do odczytu.
0x80D02018L DO_E_FILE_DOWNLOADSINK_UNSPECIFIED Zadanie pobierania Nie można uruchomić pobierania, ponieważ nie określono ujścia pobierania (lokalnego pliku lub interfejsu strumienia)
0x80D02200L DO_E_DOWNLOAD_NO_URI IDODownload, interfejs Pobieranie zostało uruchomione bez podawania identyfikatora URI
0x80D03805L DO_E_BLOCKED_BY_NO_NETWORK Przejściowe warunki Pobieranie wstrzymane z powodu utraty łączności sieciowej
   0 00 00000     Total 4 bytes (32 bits)
   - -- -----
   | |  |
   | |  |
   | |  +---------  Error code (20 bits)
   | |
   | +------------- Component/Area code (8 bits)
   |
   +--------------- Facility code (4 bits) 

Aby uzyskać więcej informacji na temat analizowania kodów, zobacz Kody wyników agenta aktualizacji urządzeń i rozszerzone kody wyników lub implementowanie niestandardowej procedury obsługi zawartości.

Usługa zawartości Device Update

W poniższej tabeli wymieniono kody błędów dotyczące składnika usługi zawartości usługi Device Update. Składnik usługi zawartości jest odpowiedzialny za importowanie zawartości aktualizacji. Więcej informacji dotyczących rozwiązywania problemów jest również dostępnych do importowania aktualizacji serwera proxy.

Kod błędu Błąd ciągu Następne kroki
UpdateAlreadyExists Aktualizacja o tej samej tożsamości już istnieje. Upewnij się, że importujesz aktualizację, która nie została jeszcze zaimportowana do tego wystąpienia usługi Device Update dla usługi IoT Hub.
DuplikowanieContentImport Identyczna zawartość importowana jednocześnie wiele razy. Upewnij się, że importujesz aktualizację, która nie została jeszcze zaimportowana do tego wystąpienia usługi Device Update dla usługi IoT Hub.
CannotProcessImportManifest Błąd podczas przetwarzania manifestu importu. Zapoznaj się z dokumentacją dotyczącą importowania i importowania aktualizacji, aby uzyskać odpowiednie formatowanie manifestu importu.
Nie można pobrać Nie można pobrać manifestu importu. Upewnij się, że adres URL pliku manifestu importu jest nadal prawidłowy.
Nie możnaparzyć Nie można przeanalizować manifestu importu. Sprawdź manifest importu pod kątem dokładności względem schematu zdefiniowanego w dokumentacji dotyczącej aktualizacji importu.
Nieobsługiwana wersja Importowanie wersji schematu manifestu nie jest obsługiwane. Upewnij się, że manifest importu używa najnowszego schematu zdefiniowanego w dokumentacji dotyczącej aktualizacji importu.
Błąd podczas importowania aktualizacji z powodu przekroczenia limitu. Nie można zaimportować dodatkowego dostawcy aktualizacji. Osiągnięto limit liczby różnych dostawców dozwolonych w wystąpieniu usługi Device Update dla usługi IoT Hub. Usuń niektóre aktualizacje z wystąpienia i spróbuj ponownie.
Błąd podczas importowania aktualizacji z powodu przekroczenia limitu. Nie można zaimportować dodatkowej nazwy aktualizacji dla określonego dostawcy. Osiągnięto limit liczby różnych nazw dozwolonych w ramach jednego dostawcy w wystąpieniu usługi Device Update dla usługi IoT Hub. Usuń niektóre aktualizacje z wystąpienia i spróbuj ponownie.
Błąd podczas importowania aktualizacji z powodu przekroczenia limitu. Nie można zaimportować dodatkowej wersji aktualizacji dla określonego dostawcy i nazwy. Osiągnięto limit liczby różnych wersji dozwolonych w ramach jednego dostawcy i nazwy w wystąpieniu usługi Device Update dla usługi IoT Hub. Usuń niektóre aktualizacje o tej nazwie z wystąpienia i spróbuj ponownie.
Błąd podczas importowania aktualizacji z powodu przekroczenia limitu. Nie można zaimportować dodatkowego dostawcy aktualizacji z określoną zgodnością.

or

Nie można zaimportować dodatkowej nazwy aktualizacji z określoną zgodnością.

or

Nie można zaimportować dodatkowej wersji aktualizacji z określoną zgodnością.
Podczas definiowania właściwości zgodności w manifeście importu należy pamiętać, że aktualizacja urządzenia dla usługi IoT Hub obsługuje pojedynczego dostawcę i kombinację nazw dla danego zestawu właściwości zgodności. Jeśli spróbujesz użyć tych samych właściwości zgodności z więcej niż jedną kombinacją dostawcy/nazwy, zostaną wyświetlone te błędy. Aby rozwiązać ten problem, upewnij się, że wszystkie aktualizacje dla danego urządzenia (zdefiniowane przez właściwości zgodności) używają tego samego dostawcy i nazwy.
CannotProcessUpdateFile Błąd podczas przetwarzania pliku źródłowego.
ContentFileCannotDownload Nie można pobrać pliku źródłowego. Upewnij się, że adres URL plików aktualizacji jest nadal prawidłowy.
SourceFileMalwareDetected Wykryto znany podpis złośliwego oprogramowania w importowanym pliku. Usługa Device Update dla usługi IoT Hub skanuje zaimportowaną zawartość pod kątem złośliwego oprogramowania przy użyciu kilku różnych mechanizmów. Jeśli zostanie zidentyfikowany znany podpis złośliwego oprogramowania, importowanie zakończy się niepowodzeniem i zostanie zwrócony unikatowy komunikat o błędzie. Komunikat o błędzie zawiera opis sygnatury złośliwego oprogramowania oraz skrót pliku dla każdego pliku, w którym wykryto podpis. Możesz użyć skrótu pliku, aby znaleźć dokładny plik oflagowany i użyć opisu podpisu złośliwego oprogramowania, aby sprawdzić ten plik pod kątem złośliwego oprogramowania.

Po usunięciu złośliwego oprogramowania ze wszystkich importowanych plików można ponownie rozpocząć proces importowania.
SourceFilePendingMalwareAnalysis Wykryto podpis w importowanym pliku, który może wskazywać na obecność złośliwego oprogramowania. Usługa Device Update dla usługi IoT Hub skanuje zaimportowaną zawartość pod kątem złośliwego oprogramowania przy użyciu kilku różnych mechanizmów. Importowanie nie powiedzie się, jeśli podpis skanowania ma cechy złośliwego oprogramowania, nawet jeśli nie istnieje dokładne dopasowanie do znanego złośliwego oprogramowania. W takim przypadku zwracany jest unikatowy komunikat o błędzie. Komunikat o błędzie zawiera opis podejrzanego podpisu złośliwego oprogramowania oraz skrót pliku dla każdego pliku, w którym wykryto podpis. Możesz użyć skrótu pliku, aby znaleźć dokładny plik oflagowany i użyć opisu podpisu złośliwego oprogramowania, aby sprawdzić ten plik pod kątem złośliwego oprogramowania.

Po usunięciu złośliwego oprogramowania z importowanych plików możesz ponownie rozpocząć proces importowania. Jeśli masz pewność, że pliki są wolne od złośliwego oprogramowania i nadal widzisz ten błąd, użyj procesu Kontakt pomoc techniczna firmy Microsoft.

Następne kroki

Rozwiązywanie problemów z aktualizacją urządzenia