Removing Windows 8.1 Built-in Applications

Last year Ben Hunter published a PowerShell script that is designed to remove the built-in Windows 8 applications when creating a Windows 8 image. Well now that Windows 8.1 has been released it must update the PowerShell script to work with Windows 8.1.

The script below takes a simple list of Apps and then removes the provisioned package and the package that is installed for the Administrator. To adjust the script for your requirements simply update the $AppList comma separated list to include the Apps you want to remove. The script is designed to work as part of an MDT or Configuration Manager task sequence. If it detects that you are running the script within a task sequence it will log the to the task sequence folder otherwise it will log to the Windows\temp folder.

I chanced the script a little bit. I don’t want to remove some programs dat Ben Hunter did…

The Script:

    Purpose:    Remove built in apps specified in list
    Pre-Reqs:    Windows 8.1

# Main Routine

# Get log path. Will log to Task Sequence log folder if the script is running in a Task Sequence
# Otherwise log to \windows\temp


$tsenv = New-Object -COMObject Microsoft.SMS.TSEnvironment
$logPath = $tsenv.Value(“LogPath”)
Write-Host “This script is not running in a task sequence”
$logPath = $env:windir + “\temp”
$logFile = “$logPath\$($myInvocation.MyCommand).log”

# Start logging
Start-Transcript $logFile
Write-Host “Logging to $logFile”

# List of Applications that will be removed

$AppsList = “microsoft.windowscommunicationsapps”,”Microsoft.BingFinance”,”Microsoft.BingMaps”,`

ForEach ($App in $AppsList)

$Packages = Get-AppxPackage | Where-Object {$_.Name -eq $App}
if ($Packages -ne $null)
  Write-Host “Removing Appx Package: $App”
  foreach ($Package in $Packages)
      Remove-AppxPackage -package $Package.PackageFullName
      Write-Host “Unable to find package: $App”
$ProvisionedPackage = Get-AppxProvisionedPackage -online | Where-Object {$_.displayName -eq $App}
if ($ProvisionedPackage -ne $null)
      Write-Host “Removing Appx Provisioned Package: $App”
      remove-AppxProvisionedPackage -online -packagename $ProvisionedPackage.PackageName
      Write-Host “Unable to find provisioned package: $App”


# Stop logging

PXE booting fails with "PXE-T04: Access Violation" and "PXE-E36: Error Received from TFTP Server

I had a very strange issue. After updating to MDT 2013 and ADK 8.1 wen a client response getting error PXE-T04: Access Violation” and “PXE-E36: Error Received.


Uninstalling WDS role
Installing WDS role

Configuring WDS

Add MDT boot Images.

It works again.

WDS was corrupted Great Sad smile