Page 1 of 1

Warnung bei aktiviertem Kompatibilitätsmodus

PostPosted: 03.01.2018, 23:37
by Dalai
Hallo Experten, und solche, die es werden wollen :).

Angeregt durch das Problem im Thread WSUS does not recognise WIN_8 hab ich versucht, herauszufinden, wie man feststellen kann, ob ein Prozess in einem Kompatibilitätsmodus läuft. Dabei bin ich unter anderem auf einen Thread bei StackOverflow gestoßen.

Da durch den Komat.modus die zuverlässige Erkennung des OS beeinträchtigt wird, schlage ich Folgendes vor: WSUS Offline - primär UpdateInstaller - sollte prüfen, ob die Umgebungsvariable __COMPAT_LAYER definiert (nicht leer) ist, und eine entsprechende Warnung ausgeben, wenn dem so ist. Grober AutoIt-Code vielleicht in diese Richtung:
Code: Select all
if NOT (EnvGet("__COMPAT_LAYER") == "") then
    MsgBox(48 + 4096, "title", "Compatibility mode active! Please disable and try again!")
EndIf
Die nächste Stufe könnte sein, die Variable zu löschen und sich selbst neu zu starten.

Grüße
Dalai

Re: Warnung bei aktiviertem Kompatibilitätsmodus

PostPosted: 04.01.2018, 12:53
by aker
Automatisch Deaktivieren halte ich für nicht sinnvoll.
Eine Warnung vor aktiviertem Kompatibilitätsmodus ist aber durchaus angebracht.

Viele Grüße

Re: Warnung bei aktiviertem Kompatibilitätsmodus

PostPosted: 12.01.2018, 19:24
by WSUSUpdateAdmin
Moin!

Danke schön :), hab' ich drin: :arrow: http://trac.wsusoffline.net/browser/trunk (r920)

Viele Grüße
Torsten

Re: Warnung bei aktiviertem Kompatibilitätsmodus

PostPosted: 12.01.2018, 21:59
by Dalai
Ah, danke. Wusste gar nicht, dass da auch andere Dinge drinstehen können. Kommt das "ElevateCreateProcess" von der UAC?

Grüße
Dalai

Re: Warnung bei aktiviertem Kompatibilitätsmodus

PostPosted: 13.01.2018, 00:02
by WSUSUpdateAdmin
Ja, und wusste ich auch nicht.
Hab' ich beim Testen gemerkt, dass der UpdateInstaller, der ja per #RequireAdmin erhöhte Rechte anfordert, dafür sorgt, dass dann "%__COMPAT_LAYER%"=="ElevateCreateProcess" gesetzt ist. :)

Gruß
Torsten