Seite 1 von 2

[GELÖST] Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 11:05 Uhr
von Stan
Hallo,

ich habe eine Frage.

Ich habe ein benutzerdefiniertes Paket zur Installation von Proton Authenticator erstellt. Es handelt sich um eine MSI-Installation, deren Pfad jedoch das lokale AppData-Verzeichnis des Benutzers ist, der die MSI-Datei gestartet hat.

Ich wollte das Paket dem Self-Service-Menü hinzufügen, damit Proton Authenticator von jedem Benutzer installiert werden kann. Allerdings wird es über das Self-Service-Menü für den Systembenutzer installiert, und selbst mit `session_setup()` gelingt mir das nicht. Könnten Sie

mir das bitte erklären? :D

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 11:24 Uhr
von Sfonteneau
Guten Morgen
stan schrieb: 12. Feb. 2026 - 11:05 Selbst mit session_setup() schaffe ich es nicht.
Warum sollte das nicht funktionieren? In diesem Fall sollte die session_setup korrekt sein

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 11:41 Uhr
von Stan
sfonteneau schrieb: 12. Feb. 2026 - 11:24 Guten Morgen
stan schrieb: 12. Feb. 2026 - 11:05 Selbst mit session_setup() schaffe ich es nicht.
Warum sollte das nicht funktionieren? In diesem Fall sollte die session_setup korrekt sein
Ich kann die Selbstbedienung nicht nutzen.*
Ich habe etwas Ähnliches für die Selbstbedienung versucht, aber es funktioniert nicht:

Code: Alle auswählen

def install():
    session_setup()

def session_setup():
    bin_name = glob.glob("ProtonAuthenticator*.msi")[0]
    install_msi_if_needed(bin_name)
    print("Proton Authenticator a été installé")
Gibt es eine Möglichkeit, die Installation für den Benutzer durchzuführen, der auf „Installieren“ klickt, anstatt sie für den Systembenutzer durchzuführen?

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 11:49 Uhr
von Sfonteneau
Eine kleine Korrektur an Ihrem Code

Code: Alle auswählen


def install():
    bin_name = glob.glob("ProtonAuthenticator*.msi")[0]
    filecopyto(bin_name , r'c:\test.msi')

def session_setup():
    bin_name = r'c:\test.msi'
    install_msi_if_needed(bin_name)
    print("Proton Authenticator a été installé")
    
    

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 12:07 Uhr
von Stan
Vielen Dank, es funktioniert jetzt.

Haben Sie eine Idee, wie man es deinstallieren kann?

Der Befehl „run('msiexec /x' + bin_name + '/q')“ funktioniert nicht.

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 12. Februar 2026 - 14:09 Uhr
von dcardon
Hallo Stan,

die Funktion `session-cleanup()` entspricht der Funktion `uninstall()` zum Bereinigen von Benutzersitzungen. Sie wird im Benutzerkontext mit den Benutzerrechten ausgeführt.

https://www.wapt.fr/en/doc/wapt-create- ... on-cleanup

Viele Grüße,

Denis

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 13. Februar 2026 - 15:16 Uhr
von Stan
Hallo,

vielen Dank! Ich wusste gar nicht, dass es diese Funktion gibt; sie muss recht neu sein.

Schönen Tag noch!

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 13. Februar 2026 - 15:59 Uhr
von Stan
dcardon schrieb: 12. Feb. 2026 - 14:09 Uhr Hallo Stan,

die Funktion `session-cleanup()` entspricht der Funktion `uninstall()` zum Bereinigen von Benutzersitzungen. Sie wird im Benutzerkontext mit den Benutzerrechten ausgeführt.

https://www.wapt.fr/en/doc/wapt-create- ... on-cleanup

Viele Grüße,

Denis
Hallo nochmal,

Nach dem Aufruf der Funktion session_cleanup() passiert nichts...

Hier ist mein Code:

Code: Alle auswählen

def session_cleanup():
    run("msiexec /x " + new_path + " /qn")
    remove_file(new_path)
Der Befehl funktioniert einwandfrei mit meinem Benutzer, aber andererseits funktioniert er nicht mit der Funktion "session_cleanup()", selbst wenn ich "wapt-get session-setup packagename" verwende, passiert nichts.

Vielen Dank, dass Sie mich aufgeklärt haben :D

Ein schönes Wochenende!

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 13. Februar 2026 - 18:00 Uhr
von Sfonteneau
Hallo,

in der angegebenen Reihenfolge:

- Version des Pakets mit session_cleanup erhöhen

- Paket mit dieser neuen Version installieren

- Paket deinstallieren

- Befehl `wapt-get session-setup ALL` ausführen.

Simon

Betreff: Selbstbedienung und der aktuelle Benutzer

Veröffentlicht: 17. März 2026 - 11:06 Uhr
von Stan
Guten Morgen,

Auch nach etwa zehnmaliger Durchführung des Vorgangs passiert nichts.

Hier ist mein Skript:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

new_path = makepath(programdata(), "wapt", "ProtonAuthenticator.msi")

def install():
    bin_name = glob.glob("ProtonAuthenticator*.msi")[0]
    filecopyto(bin_name , new_path)
    if isfile(new_path):
        print("Proton Authenticator a été copié dans " + new_path)
        return
    else:
        print("Erreur lors de la copie de Proton Authenticator dans " + new_path)
        return "ERROR"

def session_setup():
    try:
        install_msi_if_needed(new_path)
    except Exception as e:
        print("Erreur lors de l'installation de Proton Authenticator : " + str(e))
        return "ERROR"
    print("Proton Authenticator a été installé")
    return "OK"

def session_cleanup():
    run("msiexec /X" + new_path + " /qn")
    remove_file(new_path)
Wenn ich die Befehle eingebe, erhalte ich Folgendes:

Code: Alle auswählen

C:\Users\stan>wapt-get remove X-proton-authenticator
Désinstallation de X-proton-authenticator mis en file d'attente

Désinstallé(s) : X-proton-authenticator

C:\Users\stan>wapt-get session-cleanup ALL
Using config file: C:\Program Files (x86)\wapt\wapt-get.ini
1

C:\Users\stan>wapt-get session-cleanup ALL
Using config file: C:\Program Files (x86)\wapt\wapt-get.ini
0
Der Wert ging von 1 auf 0, also sollte es für mich funktionieren, tut es aber nicht.

Wenn ich jedoch die Zeile "msiexec /XProtonAuthenticator.msi /qn" in der CLI ausführe, funktioniert es einwandfrei.

Dank im Voraus :)