Seite 1 von 1

[GELÖST] Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 - 10:59 Uhr
von Minus
Guten Morgen

Ich möchte Wapt verwenden, um eine Änderung an einem Schlüssel in der Windows-Registrierung, der mit Outlook-Einstellungen zusammenhängt, auf bestimmten PCs bereitzustellen

Meine grundlegende .reg-Datei sieht folgendermaßen aus:

Code: Alle auswählen

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\AutoDiscover]
"ExcludeExplicitO365Endpoint"=dword:00000001
Ich habe also zwei Batch-Dateien wie folgt erstellt:

Als erstes muss der Schlüssel (AntiPopup.bat) installiert werden:

Code: Alle auswählen

@echo off
REG ADD HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\AutoDiscover /f /v ExcludeExplicitO365Endpoint /t REG_DWORD /d "00000001"
Die zweite Möglichkeit besteht darin, den Schlüssel (RemoveAntiPopup.bat) zu entfernen

Code: Alle auswählen

@echo off
REG DELETE HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\AutoDiscover /v ExcludeExplicitO365Endpoint /f
Zunächst habe ich die Batchdateien in einer virtuellen Maschine getestet, und sie funktionierten einwandfrei

Sobald jedoch das WAPT-Paket mit der folgenden setup.py-Datei erstellt wurde:

Code: Alle auswählen

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

uninstallkey = []

def install():
    print('AntiPopup.bat: Execute...')
    run(r'AntiPopup.bat')

def uninstall():
    print('RemoveAntiPopup.bat: Execute...')
    run(r'RemoveAntiPopup.bat')
Die Installation verläuft fehlerfrei, aber der Schlüssel wird in der VM nicht erstellt.

Da ich vermutete, dass es ein Problem mit der Ausführung einer Batch-Datei geben könnte, habe ich die Batch-Dateien in EXE-Dateien mit Administratorrechten umgewandelt.

Ich habe die ausführbaren Dateien direkt in der VM getestet; sie erstellen und löschen den Schlüssel korrekt

Ich habe die setup.py-Datei wie folgt erstellt:

Code: Alle auswählen

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

uninstallkey = []

def install():
    print('AntiPopup.exe: Execute...')
    run(r'AntiPopup.exe')

def uninstall():
    print('RemoveAntiPopup.exe: Execute...')
    run(r'RemoveAntiPopup.exe')
Und auch dort das gleiche Problem wie zuvor: Das Paket läuft fehlerfrei durch, aber die .exe-Datei wird nicht angewendet, als ob sie nicht ausgeführt würde

Könnten Sie mir bitte helfen? Ich muss einige solcher kleinen Pakete erstellen.

Vielen Dank im Voraus

### Erforderliche Informationen ###
Server mit Debian 9
Windows 10 Pro Administrator-Rechner (1909)
WAPT-Serverversion: 1.8.1
WAPT-Agent-Version: 1.8.1.6740
WAPT-Setup-Version: 1.8.1.6740
WAPT Deploy Version: 1.8.1.6740
Datenbankstatus: OK (1.7.6.6)

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 – 13:46 Uhr
von agauvrit
Hallo,

mit der richtigen Funktion geht es einfacher: https://www.wapt.fr/fr/doc/wapt-create- ... gistry-key

Alexandre

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 – 14:02 Uhr
von Minus
Ist eine so einfache setup.py-Datei für einen Python-Anfänger geeignet?

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *
 
registry_setstring(HKEY_CURRENT_USER, "SOFTWARE\\Microsoft\\Office\\16.0\\Outlook\\Autodiscover",'ExcludeExplicitO365Endpoint','00000001', type=REG_DWORD)

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 – 14:11 Uhr
von agauvrit
Ich habe gerade eine Rüge von meinem Kollegen bekommen; es handelt sich um einen HKCU-Schlüssel, der nicht im Systemkontext, sondern nur im Benutzerkontext geändert werden kann! (Danke, Simon)

Die richtige Antwort lautet:

Code: Alle auswählen

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

uninstallkey = []

def install():
    pass

def uninstall():
    pass
    
def session_setup():
    registry_setstring(HKEY_CURRENT_USER, r"SOFTWARE\Microsoft\Office\16.0\Outlook\Autodiscover",'ExcludeExplicitO365Endpoint',1, type=REG_DWORD)
Um zu verstehen, wie session_setup() funktioniert: https://www.wapt.fr/fr/doc/wapt-create- ... environment

Zuerst müssen Sie das Paket installieren > und dann den Befehl ausführen

Code: Alle auswählen

wapt-get session-setup ALL
auf der Workstation, um die Funktion session_setup auszuführen

Alexander

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 – 14:17 Uhr
von Minus
Vielen Dank für die Information und Entschuldigung für die Rüge. :?

Der Befehl `wapt-get session-setup ALL` lässt sich problemlos über eine Gruppenrichtlinie ausführen.

Wie sähe die setup.py-Datei aus, wenn es sich um einen HKLM-Schlüssel handeln würde?

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 20. Februar 2020 – 17:47 Uhr
von agauvrit
Für HKLM > Systemkontext

Code: Alle auswählen

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

uninstallkey = []

def install():
    registry_setstring(HKEY_LOCAL_MACHINE, r"SOFTWARE\Microsoft\Office\16.0\Outlook\Autodiscover",'ExcludeExplicitO365Endpoint',1, type=REG_DWORD)
    

Betreff: Erstellen eines Pakets zum Ändern der Windows-Registrierung

Veröffentlicht: 21. Februar 2020 - 09:17 Uhr
von Minus
Großartig!

Vielen Dank für all diese Informationen.