Verwenden von Win32-Diagnose-Apps im Factory-Betriebssystem
Mit den Factory OS-Produktkonfigurationen "win32_manufacturing" und "win32_development" können Sie Ihre vorhandenen Win32-Fertigungs- und Diagnose-Apps in einem Container während der Herstellung, Bereitstellung und Hardwareüberprüfung ausführen. Diese Factory OS-Produktkonfigurationen verwenden Hyper-V für die Containerunterstützung und RDP, um zwischen den Host- und Gastbetriebssystemen zu kommunizieren.
Erstellen eines Arbeitsbereichs für ein Factory OS-Image, das win32-Unterstützung enthält
Für die ersten Schritte bei der Erstellung eines Factory OS-Images mit win32-Support müssen Sie einen neuen Arbeitsbereich erstellen:
Öffnen Sie die Windows System Kit-Umgebung als Administrator.
Führen Sie
PrepWSKWorkspace
aus, und geben Sie dasFactoryOS
-Produkt und entweder diewin32_manufacturing
- oder diewin32_development
-Produktkonfiguration an:PrepWSKWorkspace C:\FactoryOSWin32Manufacturing -Product FactoryOS -ProductConfiguration win32_manufacturing
Die Datei "OEMInput.xml" in Ihrem neuen Arbeitsbereich enthält die Features, die den Container in Ihr Bild einschließen sollen.
Passen Sie das Image an. Befolgen Sie die Anweisungen ab Schritt 5 unter [Erstellen eines Factory OS-Images](build-a-Factory OS-image.md#5-add-drivers), um die Image-Anpassung abzuschließen. Unter Hinzufügen von Begleitmaterial zum Container unten finden Sie Informationen zur Verwendung des Ordners "Testinhalt", um dem Container Begleitmaterial hinzuzufügen.
Interagieren mit Containern in Factory OS
Über den Shell- und den Konsolenstart können Sie Factory OS-Container steuern und mit ihnen interagieren.
Shell-Start
Beim Start in der Factory OS-Shell können Sie wie folgt mit den Containern interagieren:
- Factory Orchestrator Tasklists, einschließlich der speziellen Factory Orchestrator-XML-Dateien
- Factory Orchestrator-App oder APIs (remote oder lokal auf dem Gerät)
- Lokal über die Remotedesktop-App, die eine Eingabeaufforderung im Container startet
Konsolenstart
Beim Start von Factory OS im Konsolenstartmodus können Sie wie folgt mit den Containern interagieren:
- Factory Orchestrator Tasklists, einschließlich der speziellen Factory Orchestrator-XML-Dateien
- Factory Orchestrator-APIs (remote oder lokal auf dem Gerät)
- Factory Orchestrator-App (remote)
Hinzufügen von Begleitmaterial zum Container
Sie können Diagnose-Win32-Apps während der Image-Erstellung und Laufzeit bereitstellen und ausführen, wenn Sie ein Factory OS-Image mithilfe dieser Produktkonfiguration erstellen:
-
Hinzufügen von Container-Apps während der Image-Erstellung: Schließen Sie einen Ordner ein, der im Ordner Testinhalt als
Container
bezeichnet wird:- Der Inhalt im Ordner
Container
ist sowohl in Factory OS als auch im Container unterC:\TestContent\Container
verfügbar - Der Ordner
Container
ist der einzige Ordner im Container, dessen Inhalt nach einem Neustart beibehalten wird. Alle anderen Datei- und Registrierungsänderungen, die Sie im Container vornehmen, werden beim Neustarten des Geräts entfernt.
- Der Inhalt im Ordner
-
Hinzufügen von Apps während der Laufzeit: Wenn ein Gerät ausgeführt wird und Sie eine App zum Container hinzufügen müssen, können Sie wie folgt vorgehen:
- Kopieren von Dateien in den Container (lokal oder remote) mithilfe der Factory Orchestrator-App oder -APIs
- Kopieren von Dateien in den Ordner
C:\TestContent\Container
mithilfe des TShell-put-device
-Befehls - Kopieren von Dateien in den Ordner
C:\TestContent\Container
mithilfe von sftp
Ausführen von GUI Win32-Apps
Wenn Sie über eine Win32-App verfügen, die eine GUI erfordert, verwenden Sie die UWP-App für Remotedesktop, die in Factory OS enthalten ist. In den folgenden Anweisungen wird davon ausgegangen, dass Sie über ein aktives Factory OS-Gerät mit einem Container verfügen, der mit einer GUI-App geladen wurde:
- Wechseln Sie in Factory Orchestrator zur Registerkarte "Eingabeaufforderung".
- Überprüfen Sie die Ausführung im Container.
- Klicken Sie auf die angezeigte Schaltfläche "Containeroberflächen anzeigen".
- Sie sind jetzt mit dem Container auf Ihrem Gerät verbunden und sollten eine Eingabeaufforderung sehen, die in der unteren linken Ecke im Container minimiert ist. Sie können diese Eingabeaufforderung maximieren und dann verwenden, um Ihre Apps zu starten.
So kehren Sie zu Factory OS zurück
Sie können zu Factory OS zurückkehren, indem Sie wie folgt vorgehen:
- Klicken Sie im Remotedesktop-App-Fenster oben in der Mitte auf "...".
- Drücken Sie ALT+Tab, bis Factory Orchestrator oder eine andere App angezeigt wird, zu der Sie wechseln möchten.
Wenn Sie versehentlich das Eingabeaufforderungsfenster schließen
Kehren Sie zu Factory OS zurück:
- Klicken Sie im Remotedesktop-App-Fenster oben in der Mitte auf "...".
- Drücken Sie ALT+Tab, bis Factory Orchestrator angezeigt wird
Wechseln Sie in Factory Orchestrator zur Registerkarte "Eingabeaufforderung".
Aktivieren Sie das Kontrollkästchen "In Container ausführen".
Führen Sie im Textfeld "Befehl" den folgenden Befehl aus:
RunAsRdUser "c:\windows\system32\cmd.exe` `/C start cmd.exe`
Klicken Sie auf das Symbol „Ausführen“.
Klicken Sie auf die Schaltfläche "Container-Benutzeroberfläche anzeigen". Daraufhin wird die Eingabeaufforderung wieder angezeigt.
Ausführen von Win32-Apps im Container als Teil einer Factory Orchestrator-TaskList
Wenn Sie eine Aufgabe in Factory Orchestrator erstellen, können Sie diese Aufgabe so konfigurieren, dass sie im Container ausgeführt wird. Aktivieren Sie dazu das Kontrollkästchen In Container ausführen?, wenn Sie die Aufgabe erstellen:
Sie können dazu auch eine FactoryOrchestratorXML-Datei erstellen und ein RunInContainer="true"-Attribut zu den Aufgaben hinzufügen, die Sie im Container ausführen möchten.
- Wenn Sie eine TaskList ausführen, erkennt Factory Orchestrator automatisch, ob die für die im Container ausgeführte Aufgabe eine GUI erforderlich ist.
- Wenn die Aufgabe eine GUI erfordert, wird automatisch eine Remotedesktopverbindung für den Container hergestellt. Sobald die Verbindung hergestellt wurde, wird die Aufgabe automatisch gestartet. Beim Schließen des Programms wird die Remotedesktopverbindung beendet, und die nächste Aufgabe in der TaskList wird automatisch gestartet.
Supportbereiche
App-Kategorien
Nicht alle App-Kategorien sind im Bereich der Containerunterstützung. Hier finden Sie eine umfangreiche Liste der Bereiche, die im Bereich und außerhalb des Bereichs der App-Kompatibilität in Factory OS-Containern sind:
- Im Bereich:
- Entpackte Win32-Konsolen-Apps
- Entpackte Win32-Apps mit eingeschränkter Benutzeroberfläche
- Gepackte Win32-Konsolen-Apps
- Gerpackte Win32-Apps mit eingeschränkter Benutzeroberfläche
- Nicht im Bereich:
- App-Kategorien, die Hardware mit hoher Spezifikation erfordern, z. B. professionelle Videobearbeitung
- Apps, die COM-Unterstützung (Komponentenobjektmodell) zwischen den Host- und Gastbetriebssystemen benötigen
Nicht unterstützte Szenarien
Einige Szenarien werden nicht unterstützt:
Bereich | Szenarien |
---|---|
Medienübertragungsprotokoll (MTP) |
|
USB-Druck | Druckerunterstützung |
Virtualisierung | Apps, die ihren eigenen Hypervisor installieren |
Apps, die eigene Treiber installieren | Win32-Apps, die Treiber installieren und starten, weisen aufgrund der erforderlichen Interaktion über die Containergrenze möglicherweise ein unerwartetes Verhalten auf. |
Bildschirmaufnahme | Apps, die versuchen, eine Bildschirmaufnahme des Hostbetriebssystems zu erstellen |
Apps, die die Shell-Integration erfordern | Apps, die Taskleisteninteraktionen oder andere Shell-Interaktionen benötigen |