Hardwaresupport-App (HSA): Schritte für App-Treiberentwickler
Artikel
In diesem Thema wird beschrieben, wie Sie eine gerätespezifische App mit einem Treiber oder RPC (Remote Procedure Call)-Endpunkt verknüpfen. Wenn die App auf diese Weise gekoppelt ist, wird sie als Hardware Support App (HSA) bezeichnet. Sie können eine Hardware Support App über den Microsoft Store distribuieren und aktualisieren.
Beginnen Sie entweder mit einer Universal Windows Platform (UWP)-App oder einer Desktop-App (Win32). Wenn Sie eine Desktop-App verwenden möchten, erstellen Sie mit der Desktop Bridge ein Windows-App-Paket, das Sie in den Store hochladen können.
Diese Seite beschreibt die Vorgehensweise für eine UWP-App, aber die Schritte sind für die Win32-Option ähnlich.
Installieren Sie zunächst die neueste Version von Visual Studio und erstellen Sie ein UWP-App-Projekt. Um eine UWP-App mit angepassten Funktionalitäten zu erstellen, benötigen Sie Windows SDK Version 10.0.15063 (Windows 10 Creators Update) oder höher. In Ihrer Projektdatei muss auch die Version 10.0.15063 oder höher angegeben sein. Weitere Hilfe bei der Konfiguration finden Sie unter Entwickeln von UWP-Apps mit Visual Studio.
Ab Windows 10 Version 1709 können Sie festlegen, dass eine Universal Windows Platform (UWP)-App nur geladen werden soll, wenn ein bestimmter Treiber vorhanden ist. Wie das geht, erfahren Sie unter Koppeln eines Treibers mit einer UWP-App.
Erstellen Sie ein Microsoft Store-Konto
Ein Entwicklerkonto im Microsoft Store ist erforderlich. Hardware-Partner benötigen ein Microsoft Store-Konto, das sich von ihrem Hardware-Partner-Konto unterscheidet. Sie benötigen den Herausgebernamen, wenn Sie das App-Manifest und die Gerätemetadaten in späteren Schritten erstellen. Sie können auch einen Namen für Ihre App reservieren, nachdem Sie ein Store-Profil erstellt haben.
Wenn Ihre App mit einem Treiber kommuniziert, können Sie Windows.Devices.Custom verwenden, das ein Element der WinRT API ist und daher in JavaScript, C# und C++ verfügbar ist.
Wenn Ihre App mit einem NT-Dienst kommunizieren soll, müssen Sie die RPC APIs verwenden. Da es sich bei den RPC-APIs um Win32-APIs handelt, die in WinRT nicht verfügbar sind, müssen Sie entweder C++, C++/CLI verwenden oder die RPC-Aufrufe mit Hilfe von .NET Interop (PInvoke) verpacken. Weitere Informationen finden Sie unter Aufruf nativer Funktionen aus verwaltetem Code und .NET-Programmierung mit C++/CLI.
Kontaktieren des Besitzers der angepassten Funktionalitäten
Jetzt können Sie den Zugriff auf eine angepasste Funktionalität von einem Besitzer der Funktionalität anfordern. Dazu müssen Sie die folgenden Informationen sammeln:
App PFN (Package Family Name) aus dem Microsoft Store
Name der angepassten Funktionalität
Signatur Hash des Signierzertifikats der App, das Sie mit certutil.exe aus Ihrer .cer-Datei generieren können. Das Zertifikat muss SHA-256 sein.
Um den Signatur-Hash zu generieren, führen Sie C:\Windows\System32\certutil.exe -dump CertificateName.cer aus.
Achten Sie auf den Signatur-Hash am unteren Rand und stellen Sie sicher, dass er SHA256 ist. Andernfalls verwenden Sie ein SHA256-Zertifikat, um Ihre App zu signieren. Das Ergebnis sollte wie folgt aussehen:
Der/die Entwickler*in kann die App mit angepassten Funktionalitäten im Entwicklermodus weiterentwickeln, während er/sie darauf wartet, dass der Besitzer der Funktionalitäten die Anfrage genehmigt. Verwenden Sie zum Beispiel Folgendes im SCCD auf einem Desktop-PC im Entwicklermodus:
Katalogeintrag in der SCCD.
<Catalog>FFFF</Catalog>
Zertifikat-Signatur-Hash im Eintrag für die autorisierte Entität in der SCCD. Obwohl dies weder erzwungen noch validiert wird, geben Sie bitte eine 64-stellige Sequenz ein.
Kopieren Sie dann die SCCD-Datei in den Paket-Root des appx-Pakets. Klicken Sie im Lösungs-Explorer von Visual Studio mit der rechten Maustaste auf „Projekt-> Hinzufügen -> Bestehendes Element...“, um die SCCD zu Ihrem Projekt hinzuzufügen.
Markieren Sie die SCCD als Build-Inhalt, indem Sie mit der rechten Maustaste auf die SCCD-Datei klicken und Inhalt in Wahr ändern. Für ein C#-Projekt verwenden Sie die Eigenschaft Build Action = Content und für ein JavaScript-Projekt Package Action = Content.
Klicken Sie schließlich mit der rechten Maustaste auf das Projekt, wählen Sie Store und dann App-Pakete erstellen.
Es gibt keine Unterstützung für UWP-Apps mit angepassten Funktionalitäten auf mobilen Plattformen.
Wenn sich der Zielcomputer im Entwicklermodus befindet, können Sie die folgenden Schritte versuchen, um den Fehler bei der App-Registrierung zu beheben:
Entfernen Sie den Eintrag für die angepassten Funktionalitäten aus Ihrem AppX-Manifest.
Erstellen Sie Ihre App und stellen Sie sie bereit.
Geben Sie in einem PowerShell-Fenster Get-AppxPackage ein.
Suchen Sie Ihre App in der Liste und überprüfen Sie den genauen Paket Family Name für Ihre App.
Aktualisieren Sie Ihre SCCD mit dem Package Family Name.
Fügen Sie den Eintrag für die angepasste Funktionalität wieder in Ihr AppX-Manifest ein.
Azure HPC ist eine zweckorientierte Cloudfunktion für HPC- und KI-Workloads, die modernste Prozessoren und InfiniBand-Verbindungen der HPC-Klasse verwendet, um die beste Anwendungsleistung, Skalierbarkeit und den besten Nutzen zu erzielen. Mit Azure HPC können Benutzer Innovationen, Produktivität und geschäftliche Agilität mithilfe einer hochverfügbaren Palette von HPC- und KI-Technologien nutzen, die dynamisch zugeordnet werden können, wenn sich Ihre geschäftlichen und technischen Anforderungen ändern. Bei