Files
wBase/CleaningScripts/reinstall-preinstalledApps.ps1
USER ddd9ba7a17 .
2023-03-30 20:50:43 +01:00

38 lines
1.0 KiB
PowerShell

# Get all the provisioned packages
$Packages = (get-item 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Applications') | Get-ChildItem
# Filter the list if provided a filter
$PackageFilter = $args[0]
if ([string]::IsNullOrEmpty($PackageFilter))
{
echo "No filter specified, attempting to re-register all provisioned apps."
}
else
{
$Packages = $Packages | where {$_.Name -like $PackageFilter}
if ($Packages -eq $null)
{
echo "No provisioned apps match the specified filter."
exit
}
else
{
echo "Registering the provisioned apps that match $PackageFilter"
}
}
ForEach($Package in $Packages)
{
# get package name & path
$PackageName = $Package | Get-ItemProperty | Select-Object -ExpandProperty PSChildName
$PackagePath = [System.Environment]::ExpandEnvironmentVariables(($Package | Get-ItemProperty | Select-Object -ExpandProperty Path))
# register the package
echo "Attempting to register package: $PackageName"
Add-AppxPackage -register $PackagePath -DisableDevelopmentMode
}