Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Aby skonfigurować niestandardowy plik INF dla CFU, postępuj zgodnie ze wskazówkami w tym temacie, aby podać poprawne wartości i ustawienia obrazów oprogramowania układowego oraz urządzenia sprzętowego.
Uwaga / Notatka
CfU jest dostępny w systemie Windows 10 w wersji 2004 (Windows 10 maj 2020 Update) i nowszych wersjach.
Poniższy przykładowy plik INF CFU zawiera punkt wyjścia dla niestandardowego pliku INF urządzenia. Przykładowy plik INF konfiguruje sterownik skrzynki odbiorczej CFU (hidcfu.dll) w celu włączenia scenariusza aktualizacji oprogramowania układowego dla wirtualnego urządzenia CFU HID. Zapoznaj się z tematem symulacji aktualizacji oprogramowania układowego wirtualnego urządzenia HID cfU , aby uzyskać szczegółowe informacje na temat przykładowego kodu urządzenia wirtualnego i przewodnika, który symuluje aktualizowanie oprogramowania układowego na wirtualnym urządzeniu HID. Poniższe sekcje odwołują się do dołączonego przykładowego pliku INF, aby zilustrować koncepcje konfiguracji omówione w tym temacie.
Rzeczywisty plik INF musi być dostosowany i skonfigurowany specjalnie dla oprogramowania układowego i sprzętu urządzenia.
Zanim rozpoczniesz
Poniższe zasoby pomogą Ci dowiedzieć się więcej o protokole aktualizacji oprogramowania sprzętowego komponentu (CFU).
Wprowadzenie do aktualizacji oprogramowania sprzętowego komponentu
Film WinHEC 2018 na temat aktualizacji składnika układowego oprogramowania
Specyfikacja protokołu aktualizacji oprogramowania układowego składnika (CFU) opisuje ogólny protokół HID w celu aktualizacji oprogramowania układowego dla składników znajdujących się na komputerze lub akcesoriach. Specyfikacja umożliwia składnikowi akceptowanie oprogramowania układowego bez przerywania operacji urządzenia podczas pobierania.
Przykład aktualizacji oprogramowania układowego CFU zawiera przykładowy kod źródłowy oprogramowania układowego do implementowania protokołu CFU.
Autonomiczne narzędzie CFU może służyć do testowania aktualizacji oprogramowania układowego na urządzeniu podczas programowania i przed przekazaniem go do usługi Windows Update.
Przegląd
Aby zaktualizować obraz oprogramowania układowego urządzenia przy użyciu modelu CFU, należy spełnić następujące wymagania:
Podaj niestandardowy plik INF dla urządzenia. Ten plik zawiera informacje do sterownika skrzynki odbiorczej CFU, który wysyła aktualizację oprogramowania układowego do urządzenia. Zalecamy dostosowanie przykładowego pliku INF CFU podanego poniżej w tym temacie w celu obsługi scenariuszy aktualizacji oprogramowania układowego.
Urządzenie musi być dostarczane z obrazem oprogramowania układowego zgodnym z protokołem CFU , aby umożliwić akceptowanie aktualizacji ze sterownika CFU.
Urządzenie musi uwidocznić się jako urządzenie HID w systemie operacyjnym (z uruchomionym sterownikiem skrzynki odbiorczej CFU) i uwidocznić funkcję HID Top-Level Collection (TLC). Sterownik skrzynki odbiorczej CFU ładuje się na TLC i wysyła aktualizację oprogramowania układowego do urządzenia.
Umożliwia to obsługę urządzeń na rynku za pośrednictwem usługi Windows Update. Aby zaktualizować oprogramowanie układowe składnika, należy wdrożyć obraz aktualizacji oprogramowania układowego za pośrednictwem usługi Windows Update. Gdy sterownik skrzynki odbiorczej CFU wykryje obecność składnika, wykonuje niezbędne akcje na hoście i przesyła obraz oprogramowania układowego do podstawowego składnika na urządzeniu.
Konfigurowanie niestandardowego pliku INF CFU
W niestandardowym pliku INF wstaw identyfikatory sprzętowe urządzeń, jak pokazano w tym przykładzie.
[Standard.NTamd64] %CfuVirtualHidDeviceFwUpdate.DeviceDesc%=CfuVirtualHidDeviceFwUpdate, HID\VID_045E&UP:FA00_U:00F5 ; HardwareID for VirtualHidDevice MCUUstawienia identyfikatora sprzętu INF
Aby sterownik skrzynki odbiorczej CFU komunikował się z oprogramowaniem układowym, identyfikator sprzętu określony w INF powinien być zgodny z tym, co jest określone w konfiguracji deskryptora Hid w oprogramowaniu układowym.
Jak pokazano poniżej, wartości CfuVirtualHidDeviceFwUpdate.inf są zgodne z wartościami określonymi w deskryptorze Hid sterownika symulacji oprogramowania układowego wirtualnego.
[Standard.NTamd64] %CfuVirtualHidDeviceFwUpdate.DeviceDesc%=CfuVirtualHidDeviceFwUpdate, HID\VID_045E&UP:FA00_U:00F5Aby uzyskać więcej informacji, zapoznaj się z następującym kodem w g_CfuVirtualHid_HidReportDescriptor (Hid Report Descriptor) w pliku DmfInterface.c.
0x06, CFU_DEVICE_USAGE_PAGE, // USAGE_PAGE(0xFA00) 0x09, CFU_DEVICE_USAGE, // USAGE(0xF5)W niestandardowym pliku INF zaktualizuj następujące wpisy pokazane tutaj (w tym sekcje SourceDisksFiles i CopyFiles ), aby dopasować pliki do aktualizacji oprogramowania układowego.
Na przykład, przykładowe wirtualne urządzenie HID CFU obsługuje dwa składniki (MCU i Audio). W poniższej przykładowej sekcji określono pliki oferty i ładunku dla tych składników.
; Specify the location of the firmware offer ; and payload file in the registry. ; The files are kept in driver store. ; When deployed, %13% would be expanded to ; the actual path in driver store. ; ; You can change subkey name under CFU ; (for example, "CfuVirtualHidDevice_MCU"), ; and specify your own offer ; (for example, "CfuVirtualHidDevice_MCU.offer.bin") ; and payload (for example, "CfuVirtualHidDevice_MCU.payload.bin") ; file name. ; HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_MCU,Offer, 0x00000000, %13%\CfuVirtualHidDevice_MCU.offer.bin HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_MCU,Payload, 0x00000000, %13%\CfuVirtualHidDevice_MCU.payload.bin HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_Audio,Offer, 0x00000000, %13%\CfuVirtualHidDevice_Audio.offer.bin HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_Audio,Payload, 0x00000000, %13%\CfuVirtualHidDevice_Audio.payload.bin [SourceDisksFiles] CfuVirtualHidDevice_MCU.offer.bin=1 CfuVirtualHidDevice_MCU.payload.bin=1 CfuVirtualHidDevice_Audio.offer.bin=1 CfuVirtualHidDevice_Audio.payload.bin=1 [CfuVirtualHidDeviceFwUpdate.CopyFiles] CfuVirtualHidDevice_MCU.offer.bin CfuVirtualHidDevice_MCU.payload.bin CfuVirtualHidDevice_Audio.offer.bin CfuVirtualHidDevice_Audio.payload.binAby uzyskać pełny przykładowy plik CFU INF, zobacz poniżej przykładowy plik CFU INF.
Uwaga / Notatka
Po zainstalowaniu pakietów system operacyjny zastępuje
%13%pełną ścieżką do plików przed utworzeniem wartości rejestru. W związku z tym sterownik może wyliczyć rejestr i zidentyfikować wszystkie obrazy oprogramowania układowego oraz pliki oferowane.Uwaga / Notatka
W powyższym przykładzie "A410A898-8132-4246-AC1A-30F1E98BB0A4", "Offer", "Payload" nie należy zmieniać, ponieważ sterownik skrzynki odbiorczej CFU będzie wyszukiwał te wartości w czasie wykonywania.
W niestandardowym pliku INF określ możliwości swojego urządzenia, korzystając z ustawień wartości rejestru opisanych w poniższej tabeli i przykładowej sekcji INF.
Sterownik skrzynki odbiorczej CFU umożliwia dostosowanie zachowania sterownika w celu optymalizacji pod kątem niektórych scenariuszy. Te ustawienia są kontrolowane za pomocą ustawień rejestru opisanych w poniższej tabeli wartości rejestru CFU.
Na przykład sterownik skrzynki odbiorczej CFU wymaga informacji o szczegółach użycia funkcji wartości zgodnie z implementacją oprogramowania układowego. Aby uzyskać więcej informacji i przykład dotyczący sposobu, jak to zrobić, zobacz sekcję ustawień wartości INF.
Można skonfigurować każdą z tych wartości rejestru zgodnie z potrzebami implementacji oprogramowania układowego.
Wartości rejestru CFU
Wartość rejestru Opis Wyrównanie Atrybut protokołu: Jakie jest wyrównanie rekordu binarnego wymagane przez tę konfigurację? Podczas fazy wysyłania ładunku protokołu sterownik wypełnia wiele buforów HID ładunkiem i wysyła je do oprogramowania układowego jeden po drugim.
Ta opcja kontroluje wymaganie wyrównania podczas pakowania ładunku.
Domyślnie jest używane wyrównanie 8 bajtów. Jeśli nie jest wymagane wyrównanie, skonfiguruj to jako 1.
UseHidSetOutputReport 0 — Sterownik będzie używać żądania zapisu podczas wysyłania dowolnego raportu wyjściowego. 1 — Sterownik będzie używać IOCTL_HID_SET_OUTPUT_REPORT do wysyłania dowolnego raportu wyjściowego.
Wartość domyślna to 0. Ustaw wartość 1, jeśli podstawowy transport nie jest USB (na przykład HID Over BTH).
Minimalny Zakres Użytkowania Zdolności Ofertowej dla Wartości Wejściowej Minimalna wartość użycia funkcji dla obsługi raportów wejściowych oferty. Minimalna wartość zakresu użycia zdolności oferowanej wydajności produkcyjnej Minimalna wartość wykorzystania możliwości dla obsługi raportów wyjściowych oferty. PayloadInputValueCapabilityUsageZakresMinimalny Minimalna wartość użycia możliwości obsługi raportów wejściowych ładunku. WartośćWyjściowaŁadunkuZdolnośćZakresUżyciaMinimum Minimalna wartość użycia możliwości obsługi raportów wyjściowych ładunku. WersjeFunkcjaWartośćZdolnośćZakresUżyciaMinimalny Minimalna wartość możliwości użycia dla obsługi raportów dotyczących funkcji wersji. Ustawienia możliwości wartości INF
Aby sterownik skrzynki odbiorczej CFU komunikował się z oprogramowaniem układowym, wartości użycia możliwości określone w INF powinny być zgodne z tymi w konfiguracji deskryptora Hid w oprogramowaniu układowym.
W tym przykładzie wartości INF są zgodne z wartościami określonymi w deskryptorze Hid sterownika symulacji wirtualnego oprogramowania układowego.
[CfuVirtualHidDeviceFwUpdate_HWAddReg] ... ... HKR,,OfferInputValueCapabilityUsageRangeMinimum,0x00010001,0x1A HKR,,OfferOutputValueCapabilityUsageRangeMinimum,0x00010001, 0x1E HKR,,PayloadInputValueCapabilityUsageRangeMinimum,0x00010001,0x26 HKR,,PayloadOutputValueCapabilityUsageRangeMinimum,0x00010001,0x31 HKR,,VersionsFeatureValueCapabilityUsageRangeMinimum,0x00010001, 0x42Aby uzyskać więcej informacji, zapoznaj się z następującym kodem w g_CfuVirtualHid_HidReportDescriptor (Hid Report Descriptor) w pliku DmfInterface.c.
0x85, REPORT_ID_PAYLOAD_INPUT, // REPORT_ID(34) 0x75, INPUT_REPORT_LENGTH, // REPORT SIZE(32) 0x95, 0x04, // REPORT COUNT(4) 0x19, PAYLOAD_INPUT_USAGE_MIN, // USAGE MIN (0x26) 0x29, PAYLOAD_INPUT_USAGE_MAX, // USAGE MAX (0x29) 0x81, 0x02, // INPUT(0x02) 0x85, REPORT_ID_OFFER_INPUT, // REPORT_ID(37) 0x75, INPUT_REPORT_LENGTH, // REPORT SIZE(32) 0x95, 0x04, // REPORT COUNT(4) 0x19, OFFER_INPUT_USAGE_MIN, // USAGE MIN (0x1A) 0x29, OFFER_INPUT_USAGE_MAX, // USAGE MAX (0x1D) 0x81, 0x02, // INPUT(0x02) 0x85, REPORT_ID_PAYLOAD_OUTPUT, // REPORT_ID(32) 0x75, 0x08, // REPORT SIZE(8) 0x95, OUTPUT_REPORT_LENGTH, // REPORT COUNT(60) 0x09, PAYLOAD_OUTPUT_USAGE, // USAGE(0x31) 0x92, 0x02, 0x01, // OUTPUT(0x02) 0x85, REPORT_ID_OFFER_OUTPUT, // REPORT_ID(37) 0x75, INPUT_REPORT_LENGTH, // REPORT SIZE(32) 0x95, 0x04, // REPORT COUNT(4) 0x19, OFFER_OUTPUT_USAGE_MIN, // USAGE MIN (0x1E) 0x29, OFFER_OUTPUT_USAGE_MAX, // USAGE MAX (0x21) 0x91, 0x02, // OUTPUT(0x02) 0x85, REPORT_ID_VERSIONS_FEATURE, // REPORT_ID(32) 0x75, 0x08, // REPORT SIZE(8) 0x95, FEATURE_REPORT_LENGTH, // REPORT COUNT(60) 0x09, VERSIONS_FEATURE_USAGE, // USAGE(0x42) 0xB2, 0x02, 0x01, // FEATURE(0x02)
Wdrażanie pakietu oprogramowania układowego za pośrednictwem usługi Windows Update
Następnie wdróż pakiet za pośrednictwem usługi Windows Update.
Aby uzyskać informacje na temat wdrażania, zapoznaj się z dokumentem Przepływ pracy publikowania sterowników dla Windows 10 (do pobrania jako DOCX).
Format pliku obrazu aktualizacji oprogramowania układowego
Obraz aktualizacji oprogramowania układowego ma dwie części: plik oferty i plik ładunku. Oferta zawiera niezbędne informacje o ładunku, aby umożliwić podstawowemu składnikowi urządzenia odbierającego aktualizację zdecydowanie, czy ładunek jest akceptowalny. Ładunek to zakres adresów i bajtów, z których może korzystać podstawowy komponent.
Format oferty
Plik oferty to 16-bajtowe dane binarne, których struktura musi być zgodna z formatem określonym w sekcji 5.5.1 specyfikacji protokołu CFU.
Format ładunku
Plik ładunku jest plikiem binarnym, który jest kolekcją rekordów przechowywanych w sposób ciągły. Każdy rekord ma następujący format.
| Przesunięcie | Rozmiar | Wartość | Opis |
|---|---|---|---|
| Bajt 0 | DWORD | Adres oprogramowania układowego | Little Endian (LSB First) Adres do zapisu danych. Adres jest oparty na 0. Oprogramowanie układowe może użyć go jako przesunięcia, aby określić adres zgodnie z potrzebami podczas umieszczania obrazu w pamięci. |
| Bajt 4 | Byte | Długość | Długość danych ładunku. |
| Bajt 5-N | Bajty | Dane | Tablica bajtów danych ładunku. |
Stan aktualizacji oprogramowania układowego
Podczas transakcji w ramach protokołu sterownik skrzynki odbiorczej CFU zapisuje wpisy rejestru, aby wskazać stan. W tej tabeli opisano nazwę, format wartości i znaczenie wartości, które sterownik dotyka w różnych etapach protokołu.
_ID_ w tabeli reprezentuje identyfikator składnika, który jest pobierany z pliku oferty. Zgodnie ze specyfikacją identyfikator składnika jednoznacznie identyfikuje każdy składnik.
Aby uzyskać informacje na temat wartości DWORD, zapoznaj się ze specyfikacją.
| Etap | Lokalizacja | Nazwa wartości rejestru | Wartość (DWORD) |
|---|---|---|---|
| Początek; Oferta wstępna. | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaCurrentFwVersion" | Wersja z urządzenia |
| {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaFirmwareUpdateStatus" | STATUS_AKTUALIZACJI_FIRMWARE_NIE_ROZPOCZĘTO | |
| Oferta; Zaraz wyślę ofertę. | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaOfferFwVersion" | Wersja, która jest wysyłana (lub ma zostać wysłana) do urządzenia. |
| Odpowiedź na ofertę (odrzucona) | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | Identyfikator składnikaPowódOdrzuceniaAktualizacjiOprogramowaniaFirmware | Przyczyna odrzucenia podana przez urządzenie. |
| Odpowiedź na ofertę (urządzenie jest zajęte) | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaFirmwareUpdateStatus" | STATUS_AKTUALIZACJI_FIRMWARE_ZAJĘTY_PRZETWARZANIE_AKTUALIZACJI |
| Odpowiedź na ofertę (zaakceptowana); Zaraz zostanie wysłany ładunek. | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaFirmwareUpdateStatus" | STATUS_AKTUALIZACJI_OPROGRAMOWANIA_POBIERANIE_AKTUALIZACJI |
| Ładunek zaakceptowany. | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaFirmwareUpdateStatus" | STATUS_AKTUALIZACJI_OPROGRAMOWANIA_OCZEKUJE_NA_RESET |
| Błąd na dowolnym etapie. | {Klucz sprzętu urządzenia}\ComponentFirmwareUpdate | "Identyfikator składnikaFirmwareUpdateStatus" | FIRMWARE_UPDATE_STATUS_ERROR |
Przykładowy plik INF CFU
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Copyright (c) Microsoft Corporation. All rights reserved.
;
; THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
; KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
; IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
; PURPOSE.
;
; File:
;
: CfuVirtualHidDeviceFwUpdate.inx
;
; Description:
;
; Sample INF file for Cfu virtual Hid device firmware update.
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[Version]
Signature="$Windows NT$"
Class=Firmware
ClassGuid={f2e7dd72-6468-4e36-b6f1-6488f42c1b52}
Provider=%ManufacturerName%
CatalogFile=CfuVirtualHidDeviceFwUpdate.cat
DriverVer = 12/16/2019,11.42.16.703
PnPLockDown=1
[SourceDisksNames]
1= %DiskName%
[DestinationDirs]
CfuVirtualHidDeviceFwUpdate.CopyFiles=13
[Manufacturer]
%ManufacturerName%=Standard,NTamd64
[Standard.NTamd64]
%CfuVirtualHidDeviceFwUpdate.DeviceDesc%=CfuVirtualHidDeviceFwUpdate, HID\VID_045E&UP:FA00_U:00F5 ; HardwareID for VirtualHidDevice MCU
[CfuVirtualHidDeviceFwUpdate.NT]
Include = HidCfu.inf
Needs = HidCfu.NT
CopyFiles = CfuVirtualHidDeviceFwUpdate.CopyFiles
[CfuVirtualHidDeviceFwUpdate.NT.Wdf]
Include = HidCfu.inf
Needs = HidCfu.NT.Wdf
[CfuVirtualHidDeviceFwUpdate.NT.HW]
AddReg = CfuVirtualHidDeviceFwUpdate_HWAddReg
[CfuVirtualHidDeviceFwUpdate_HWAddReg]
HKR,,FriendlyName,,%FwUpdateFriendlyName%
HKR,,Alignment,0x00010001, 1 ; (No Alignment)
HKR,,OfferInputValueCapabilityUsageRangeMinimum,0x00010001,0x1A
HKR,,OfferOutputValueCapabilityUsageRangeMinimum,0x00010001, 0x1E
HKR,,PayloadInputValueCapabilityUsageRangeMinimum,0x00010001,0x26
HKR,,PayloadOutputValueCapabilityUsageRangeMinimum,0x00010001,0x31
HKR,,VersionsFeatureValueCapabilityUsageRangeMinimum,0x00010001, 0x42
; Specify the location of the firmware offer and payload file in the registry.
; The files are kept in the driver store.
; When deployed, %13% would be expanded to the actual path
; in driver store.
;
; You can change subkey name under CFU (e.g. "CfuVirtualHidDevice_MCU"), and specify your own offer
; (e.g. "CfuVirtualHidDevice_MCU.offer.bin") and payload (e.g "CfuVirtualHidDevice_MCU.payload.bin") file name.
;
HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_MCU,Offer, 0x00000000, %13%\CfuVirtualHidDevice_MCU.offer.bin
HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_MCU,Payload, 0x00000000, %13%\CfuVirtualHidDevice_MCU.payload.bin
HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_Audio,Offer, 0x00000000, %13%\CfuVirtualHidDevice_Audio.offer.bin
HKR,A410A898-8132-4246-AC1A-30F1E98BB0A4\CfuVirtualHidDevice_Audio,Payload, 0x00000000, %13%\CfuVirtualHidDevice_Audio.payload.bin
[SourceDisksFiles]
CfuVirtualHidDevice_MCU.offer.bin=1
CfuVirtualHidDevice_MCU.payload.bin=1
CfuVirtualHidDevice_Audio.offer.bin=1
CfuVirtualHidDevice_Audio.payload.bin=1
[CfuVirtualHidDeviceFwUpdate.CopyFiles]
CfuVirtualHidDevice_MCU.offer.bin
CfuVirtualHidDevice_MCU.payload.bin
CfuVirtualHidDevice_Audio.offer.bin
CfuVirtualHidDevice_Audio.payload.bin
[CfuVirtualHidDeviceFwUpdate.NT.Services]
Include = HidCfu.inf
Needs = HidCfu.NT.Services
; =================== Generic ==================================
[Strings]
ManufacturerName="Surface"
CfuVirtualHidDeviceFwUpdate.DeviceDesc = "CfuVirtualHidDevice Firmware Update"
DiskName = "CfuVirtualHidDevice Firmware Update Installation Disk"
FwUpdateFriendlyName= "CfuVirtualHidDevice Firmware Update"
Rozwiązywanie problemów
Sprawdź dzienniki preprocesora śledzenia oprogramowania systemu Windows (WPP), aby zobaczyć interakcję sterownika na poziomie komponentu.
Sprawdź dzienniki zdarzeń pod kątem błędów krytycznych.
Sprawdź wpisy w rejestrze księgowania opisane w statusie aktualizacji oprogramowania układowego dostarczonym przez sterownik.
Często zadawane pytania
Mam składnik A, który wymaga aktualizacji, jak mogę poinformować sterownik CFU o składniku A?
Należy skonfigurować sterownik skrzynki odbiorczej CFU INF przy użyciu identyfikatora sprzętu TLC utworzonego przez składnik A.
Mam dwa składniki: składnik A i podskładnik B. Jak należy poinformować sterownik CFU o składniku B?
Nie musisz tego robić. Sterownik nie musi wiedzieć o hierarchii składników. Współdziała z podstawowym składnikiem.
Jak mogę poinformować sterownik o plikach oprogramowania układowego (oferta, ładunek), który muszę wysłać do mojego składnika A?
Informacje o pliku oprogramowania układowego są ustawiane w formacie INF jako wartości rejestru.
Mam wiele plików oprogramowania układowego, które obejmują różne oferty i dane związane z ładunkiem dla głównego składnika A oraz jego podskładników. Jak należy poinformować sterownik o tym, który plik oprogramowania układowego jest przeznaczony dla którego składnika?
Informacje dotyczące pliku firmware są zdefiniowane w pliku INF jako wartości rejestru.
Używam sterownika do aktualizacji oprogramowania układowego. Jak sprawdzić, czy aktualizacja zakończyła się pomyślnie?
Stan aktualizacji oprogramowania układowego jest aktualizowany przez sterownik w rejestrze w ramach księgowania.
Dodatkowe zasoby
Dowiedz się więcej na temat opracowywania sterowników systemu Windows przy użyciu programu Windows Driver Foundation (WDF):
Opracowywanie sterowników za pomocą windows Driver Foundation, napisane przez Penny Orwick i Guy Smith