So you have upgraded your K2000 to 3.6 (and if you haven’t, why not?!), initiated a deployment to check out the new Task Engine, and noticed new tasks called “Disable UAC” and “Enable UAC” were added into your installation plan. Perhaps you had wanted UAC disabled in your deployment? At first glance, these tasks look like they are going to enable UAC. However, the names of these tasks are not giving you the entire story.
First, lets understand why these tasks exist; These tasks were added so that UAC would be disabled when the Task Engine goes to install your Postinstallaion tasks in Windows. This was a common issue when deploying Postinstallation tasks without explicitly disabling UAC, so K2000 v3.6 added it into the deployment process. Since we did not want to disable UAC permanently, the Disable UAC task actually checks the current status of UAC and writes that value to a text file. UAC is then disabled and your Postinstallation tasks are processed. Once the Postinallation tasks are finished we run the Enable UAC task, which reads the value in the above mentioned file and restores UAC to the previous setting. If UAC was enabled in the deployment, then it will remain enabled. If UAC was disabled in the deployment, it will remain disabled.
Deployments might have UAC enabled by default, such as a basic Scripted Installation. Maybe you want the deployment to have UAC disabled. This can be achieved by directly editing the value contained in the written text file, so when Enable UAC comes back around it will instead leave UAC disabled! To find out more about the Disable/Enable UAC tasks, check out KB121713.
To find out more about the Task Engine, watch this recent KKE from the archives.