Starten eines Skripts im interaktiven Modus, der für den Benutzer sichtbar ist

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Antwort
fobrian
Nachrichten: 21
Anmeldung: 26. September 2024 - 09:35 Uhr

2. Oktober 2024 – 16:27 Uhr

Hallo,

da ich neu hier bin und dies mein erster Beitrag ist, möchte ich Ihnen zunächst zu Ihrem sehr reaktionsschnellen technischen Support und insbesondere zur unkomplizierten Kommunikation mit dem Tranquil'IT-Team in diesem Forum gratulieren, wie ich beim Durchstöbern einiger Themen festgestellt habe.

Ich habe eine Frage zur Benutzerinteraktion während der Paketbereitstellung.
Konkret möchte ich ein Popup mit Windows-Benachrichtigungen anzeigen, damit der Benutzer entscheiden kann, ob er ein direktes Upgrade von Windows 10 auf Windows 11 von seinem Computer aus starten möchte (zum Beispiel abends). Ein Vollbild-Startbildschirm soll dann den Fortschritt des Vorgangs anzeigen und den Benutzer darauf hinweisen, den Computer nicht herunterzufahren.

Derzeit erreiche ich dies mit einem Workaround: Ich starte das Skript über die Anzeigemethode von „ServiceUI.exe“, die SCCM für die Interaktion aus „Sitzung 0“ verwendet, obwohl das Paket im „SYSTEM“-Kontext und nicht im „BENUTZER“-Kontext ausgeführt wird.

Ich würde jedoch gerne wissen, ob es in WAPT eine bekannte Methode gibt, dies zu erreichen, vielleicht mithilfe einer bereits existierenden Python-Funktion.

Vielen Dank im Voraus.
fobrian
Nachrichten: 21
Anmeldung: 26. September 2024 - 09:35 Uhr

8. November 2024 – 9:17 Uhr

Guten Morgen,

Nachdem ich eine Lösung gefunden habe, antworte ich auf meinen eigenen Beitrag.
Über den Befehl laufen Von setuphelpers aus müssen Sie lediglich die ausführbaren Dateien kombinieren psexec, PowerShell Und ServiceUI (wird insbesondere von SCCM verwendet) in folgender Reihenfolge:

Code: Alle auswählen

run(r'"PsExec.exe" -s powershell.exe ServiceUI.exe C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo -Noprofile -WindowStyle Hidden -file Script.ps1')
Diese Lösung funktioniert einwandfrei und ermöglicht die Interaktion mit dem Benutzer durch die Anzeige einer Toast-Benachrichtigung (sehr nützlich, um am Ende des Tages eine große Bereitstellung auszulösen, wie beispielsweise ein „In-Place“-Upgrade von Windows 11).

Fred
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

8. November 2024 - 10:15 Uhr

Oh je, Entschuldigung, Ihre Nachricht scheint verloren gegangen zu sein

Man kann es auch so machen:

Code: Alle auswählen

from waptservice.enterprise import get_active_sessions,start_interactive_process
for session_id in get_active_sessions():
    start_interactive_process(makepath(install_location('WAPT_is1'), 'waptmessage.exe'), 'message', session_id=session_id,minimize=True)
fobrian
Nachrichten: 21
Anmeldung: 26. September 2024 - 09:35 Uhr

8. November 2024 - 10:37 Uhr

Hallo Simon,

kein Problem, ich hatte schon vermutet, dass diese Funktion in den Setup-Helferfunktionen nicht standardmäßig enthalten ist.
Vielen Dank für den Hinweis, ich kannte diese Funktion noch nicht und werde sie auf jeden Fall berücksichtigen.

Fred
Antwort