Another genius bit of fiddling by Microsoft means that on Server 2012 R2 and Windows 8.1, logon scripts no longer run as part of the logon process. This had me totally foxed for hours. I have my logon script configured via Group Policy.
I believe that it is only GPO configured scripts that are affected, if you’re using the oldskool Active Directory user account configuration then it seems like the scripts keep running as expected whilst the logon process runs through.
If they’re configured via GPO, the new default setting is to run them five minutes after logon. This makes the logon process nice and speedy – shame it leaves your environment potentially unusable for the user…
Anyway, eventually I came across this policy setting that allows you to make it work how it used to (and how you probably expected it to):
Setting Path: Computer Configuration/Administrative Templates/System/Group Policy
Setting Name: Configure Logon Script Delay
Supported On: At least Windows Server 2012 R2, Windows 8.1 or Windows RT 8.1
Enter “0” to disable Logon Script Delay. This policy setting allows you to configure how long the Group Policy client waits after logon before running scripts. By default, the Group Policy client waits five minutes before running logon scripts. This helps create a responsive desktop environment by preventing disk contention. If you enable this policy setting, Group Policy will wait for the specified amount of time before running logon scripts. If you disable this policy setting, Group Policy will run scripts immediately after logon. If you do not configure this policy setting, Group Policy will wait five minutes before running logon scripts.