Also mit GPO ist das wieder Betriebssystemabhängig. Z.b. musst Du auf einem Server der Domaincontroller ist das in den Domaincontroller-Richtlinien eintragen. Sowas sieht dann so aus (Beispiel für ein Startup-Script, ansonsten Type=Shutdown):
Code:
<Computer>
<VersionDirectory>40</VersionDirectory>
<VersionSysvol>40</VersionSysvol>
<Enabled>true</Enabled>
<ExtensionData>
<Extension xmlns:q1="http://www.microsoft.com/GroupPolicy/Settings/Scripts" xsi:type="q1:Scripts">
<q1:Script>
<q1:Command>C:\scripts\enablecache.cmd</q1:Command>
<q1:Type>Startup</q1:Type>
<q1:Order>0</q1:Order>
<q1:RunOrder>PSNotConfigured</q1:RunOrder>
</q1:Script>
</Extension>
<Name>Scripts</Name>
</ExtensionData>
<ExtensionData>
An Deiner Stelle würde ich wirklich das Abfangen der QueryEndsession mal versuchen. Ein Miniprogramm (z.b. in der Taskleiste) und es funktioniert. Wir verwenden das in allen unseren Anwendungen um zu verhindern dass die Benutzer die Programme durch versehentliches Abmelden killen.