Forum Discussion
Christiaan_Brinkhoff
Microsoft
Jul 31, 2020(Azure) Virtual Desktop Optimization Tool now available
Optimizing images has always been an important component of preparing images as part of a traditional Remote Desktop Services (RDS) infrastructure or virtual desktop infrastructure (VDI)....
Richard Blanco Jr.
Dec 17, 2021Brass Contributor
Thanks so much for your reply. We considered recreating the WVD shared hosts but the amount of LOB apps already in the deployment is staggering.
The link you sent regarding the Modern Windows apps and the FSLogix profile is certainly news to us. All our deployments use FSLogix and the fact that this wont work is amazing. I just tested this in a secondary deployment and the Windows app (i.e. Calculator) definitely gets removed from the user after the install.
I guess I need to find a way to install a regular Win32 calculator app or even the classic windows one if its available.
MortenPedholt
Dec 17, 2021Copper Contributor
Hi Richard
Well, it sounds like you are configuring each session host manually? I always read my AVD machines from a Master/GoldenImage, or using Intune/SCCM.
There is also a difference if the Appx package is installed for one specific user or all users. You can perhaps try to do it the other way again. below is a snippet of how the script removes Appx packages. then do an Add instead of Remove if you know what I mean?
#region Begin Clean APPX Packages
<#
If (Test-Path .\ConfigurationFiles\AppxPackages.json)
{
$AppxPackage = Get-Content .\ConfigurationFiles\AppxPackages.json | ConvertFrom-Json
$AppxPackage = $AppxPackage | Where-Object { $_.VDIState -eq 'Disabled' }
}
If ($AppxPackage.Count -gt 0)
{
Foreach ($Item in $AppxPackage)
{
$Package = "*$($Item.AppxPackage)*"
Write-Verbose "Attempting to remove $($Item.AppxPackage) - $($Item.Description)"
Get-AppxPackage -Name $Package | Remove-AppxPackage -ErrorAction SilentlyContinue | Out-Null
Write-Verbose "Attempting to remove [All Users] $($Item.AppxPackage) - $($Item.Description)"
Get-AppxPackage -AllUsers -Name $Package | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue
Write-Verbose "Removing Provisioned Package $($item.AppxPackage)"
Get-AppxProvisionedPackage -Online | Where-Object { $_.PackageName -like $Package } | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue | Out-Null
}
}
#>
#endregion
Well, it sounds like you are configuring each session host manually? I always read my AVD machines from a Master/GoldenImage, or using Intune/SCCM.
There is also a difference if the Appx package is installed for one specific user or all users. You can perhaps try to do it the other way again. below is a snippet of how the script removes Appx packages. then do an Add instead of Remove if you know what I mean?
#region Begin Clean APPX Packages
<#
If (Test-Path .\ConfigurationFiles\AppxPackages.json)
{
$AppxPackage = Get-Content .\ConfigurationFiles\AppxPackages.json | ConvertFrom-Json
$AppxPackage = $AppxPackage | Where-Object { $_.VDIState -eq 'Disabled' }
}
If ($AppxPackage.Count -gt 0)
{
Foreach ($Item in $AppxPackage)
{
$Package = "*$($Item.AppxPackage)*"
Write-Verbose "Attempting to remove $($Item.AppxPackage) - $($Item.Description)"
Get-AppxPackage -Name $Package | Remove-AppxPackage -ErrorAction SilentlyContinue | Out-Null
Write-Verbose "Attempting to remove [All Users] $($Item.AppxPackage) - $($Item.Description)"
Get-AppxPackage -AllUsers -Name $Package | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue
Write-Verbose "Removing Provisioned Package $($item.AppxPackage)"
Get-AppxProvisionedPackage -Online | Where-Object { $_.PackageName -like $Package } | Remove-AppxProvisionedPackage -Online -ErrorAction SilentlyContinue | Out-Null
}
}
#>
#endregion