Accedere alle variabili del firmware UEFI da un'app di Windows universale
[Alcune informazioni riguardano il prodotto non rilasciato che può essere modificato in modo sostanziale prima che venga rilasciato commercialmente. Microsoft non fornisce alcuna garanzia, espressa o implicita, in relazione alle informazioni fornite qui.
Come accedere alle variabili del firmware UEFI (Unified Extensible Firmware Interface) da un'app di Windows universale.
A partire da Windows 10 versione 1803, le app di Windows universali possono usare GetFirmwareEnvironmentVariable e SetFirmwareEnvironmentVariable (e le relative varianti "ex") per accedere alle variabili del firmware UEFI seguendo questa procedura:
Dichiarare la Microsoft.firmwareRead_cw5n1h2txyewy funzionalità personalizzata nel manifesto per leggere una variabile firmware e/o la funzionalità Microsoft.firmwareWrite_cw5n1h2txyewy per scrivere una variabile firmware.
Dichiarare anche la funzionalità con restrizioni protectedApp nel manifesto dell'app.
Ad esempio, le aggiunte del manifesto dell'app seguenti consentono all'app di Windows universale di leggere le variabili del firmware:
<Package ... xmlns:uap4=http://schemas.microsoft.com/appx/manifest/uap/windows10/4 xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" IgnorableNamespaces="uap mp uap4 rescap"> ... <Capabilities> <rescap:Capability Name="protectedApp"/> <uap4:CustomCapability Name="microsoft.firmwareRead_cw5n1h2txyewy" /> </Capabilities> </Package>
Impostare l'opzione del linker /INTEGRITYCHECK, per tutte le configurazioni del progetto, prima di inviare l'app a Microsoft Store. In questo modo si garantisce che l'app venga avviata come app protetta. Per informazioni dettagliate, vedere /INTEGRITYCHECK (Richiedi controllo della firma).
Ottenere un file SCCD (Signed Custom Capability Descriptor ) da Microsoft. Vedere Creazione di una funzionalità personalizzata per associare un driver a un'app di supporto hardware (HSA) e Uso di una funzionalità personalizzata per associare un'app di supporto hardware (HSA) a un driver per informazioni su come ottenere un file SCCD firmato da Microsoft, su come crearne il pacchetto con l'app e su come abilitare la modalità sviluppatore. Di seguito è riportato un esempio di file SSCD dell'esempio CustomCapability:
<?xml version="1.0" encoding="utf-8"?> <CustomCapabilityDescriptor xmlns="http://schemas.microsoft.com/appx/2016/sccd" xmlns:s="http://schemas.microsoft.com/appx/2016/sccd"> <CustomCapabilities> <CustomCapability Name="microsoft.hsaTestCustomCapability_q536wpkpf5cy2"></CustomCapability> <CustomCapability Name="microsoft.firmwareRead_cw5n1h2txyewy"></CustomCapability> </CustomCapabilities> <AuthorizedEntities> <AuthorizedEntity AppPackageFamilyName="Microsoft.SDKSamples.CustomCapability.CPP_8wekyb3d8bbwe" CertificateSignatureHash="ca9fc964db7e0c2938778f4559946833e7a8cfde0f3eaa07650766d4764e86c4"></AuthorizedEntity> <AuthorizedEntity AppPackageFamilyName="Microsoft.SDKSamples.CustomCapability.CPP_8wekyb3d8bbwe" CertificateSignatureHash="279cd652c4e252bfbe5217ac722205d7729ba409148cfa9e6d9e5b1cb94eaff1"></AuthorizedEntity> </AuthorizedEntities> <Catalog>xxxx</Catalog> </CustomCapabilityDescriptor>
Inviare l'app a Microsoft Store per ottenere la firma. Ai fini dello sviluppo, è possibile ignorare la firma abilitando la firma del test nel database di configurazione di avvio (bcd). Per informazioni dettagliate , vedere l'opzione di configurazione di avvio TESTSIGNING .
Argomenti correlati