├── Profile size warning ├── FSLogix Office Container Size Warning.ps1 ├── FSLogix Profile Size Warning.ps1 ├── Images │ └── fsl.jpeg └── README.md ├── Reduce profile size └── Reduce-FSLogix-Profiles.ps1 └── Start menu rules RDSH 2019 ├── FSLogix Rules assignments.ps1 ├── README.md ├── Startmenu-Items.fxa ├── Startmenu-Items.fxr ├── Startmenu-Layout-Users.fxa ├── Startmenu-Layout-Users.fxr ├── Startmenu-WinX-Admins.fxa ├── Startmenu-WinX-Admins.fxr ├── Startmenu-WinX-Users.fxa ├── Startmenu-WinX-Users.fxr ├── Windows Security-Startmenu.fxa └── Windows Security-Startmenu.fxr /Profile size warning/FSLogix Office Container Size Warning.ps1: -------------------------------------------------------------------------------- 1 | # **************************************************** 2 | # D. Mohrmann, S&L Firmengruppe, Twitter: @mohrpheus78 3 | # **************************************************** 4 | 5 | <# 6 | .SYNOPSIS 7 | Shows a message to user in the notificarion area if FSLogix Office container is almost full. 8 | 9 | .DESCRIPTION 10 | Gets information about the users FSLogix office container (size and remaining size) and calculates the free space in percent. 11 | 12 | .EXAMPLE 13 | .FSLogix Office container Size Warning.ps1 14 | 15 | .NOTES 16 | This script must be run on a machine where the user is currently logged on. 17 | Should be run as a powershell login script via GPO. 18 | Edit value $PercentFree -le 10 in line 34 to define the free percent. 19 | #> 20 | 21 | # Wait 10 sec. till showing the message 22 | Start-Sleep 10 23 | 24 | # Get the relevant informations from the FSLogix profile 25 | $FSLOContainerSize = Get-Volume -FileSystemLabel *Profile-$ENV:USERNAME* | Where-Object { $_.DriveType -eq 'Fixed'} 26 | 27 | # Execute only if FSLogix profile is available 28 | IF (!($FSLProfileSize -eq $nul)) 29 | { 30 | # Calculate the free space in percent 31 | $PercentFree = [Math]::round((($FSLOContainerSize.SizeRemaining/$FSLOContainerSize.size) * 100)) 32 | 33 | # If free space is less then 10 % show message 34 | IF ($PercentFree -le 10) {wlrmdr -s 25 -f 2 -t FSLogix Profile -m Attention! Your Office container contingent is almost exhausted. Please inform the IT service!} 35 | } 36 | -------------------------------------------------------------------------------- /Profile size warning/FSLogix Profile Size Warning.ps1: -------------------------------------------------------------------------------- 1 | # **************************************************** 2 | # D. Mohrmann, S&L Firmengruppe, Twitter: @mohrpheus78 3 | # **************************************************** 4 | 5 | <# 6 | .SYNOPSIS 7 | Shows a message to user in the notificarion area if FSLogix profile is almost full. 8 | 9 | .DESCRIPTION 10 | Gets information about the users FSLogix profile (size and remaining size) and calculates the free space in percent. 11 | 12 | .EXAMPLE 13 | .FSLogix Profile Size Warning.ps1 14 | 15 | .NOTES 16 | This script must be run on a machine where the user is currently logged on. 17 | Should be run as a powershell login script via GPO. 18 | Edit value $PercentFree -le 10 in line 34 to define the free percent. 19 | #> 20 | 21 | # Wait 10 sec. till showing the message 22 | Start-Sleep 10 23 | 24 | # Get the relevant informations from the FSLogix profile 25 | $FSLProfileSize = Get-Volume -FileSystemLabel *Profile-$ENV:USERNAME* | Where-Object { $_.DriveType -eq 'Fixed'} 26 | 27 | # Execute only if FSLogix profile is available 28 | IF (!($FSLProfileSize -eq $nul)) 29 | { 30 | # Calculate the free space in percent 31 | $PercentFree = [Math]::round((($FSLProfileSize.SizeRemaining/$FSLProfileSize.size) * 100)) 32 | 33 | # If free space is less then 10 % show message 34 | IF ($PercentFree -le 10) {wlrmdr -s 25 -f 2 -t FSLogix Profile -m Warning! Your profile contingent is almost exhausted. Please inform the IT service!} 35 | } 36 | -------------------------------------------------------------------------------- /Profile size warning/Images/fsl.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Profile size warning/Images/fsl.jpeg -------------------------------------------------------------------------------- /Profile size warning/README.md: -------------------------------------------------------------------------------- 1 | # FSLogix profile size warning 2 | Display a warning message for your users at logon if the profile or office container runs out of space. 3 | You can change the value of the percent free (default is 10). 4 | Launch script via Posh logon script in user context. 5 | 6 | ## Example 7 | ![Warning](https://github.com/Mohrpheus78/FSLogix/blob/main/Images/fsl.jpeg) 8 | -------------------------------------------------------------------------------- /Reduce profile size/Reduce-FSLogix-Profiles.ps1: -------------------------------------------------------------------------------- 1 | ####################################################################### 2 | # D. Mohrmann, 30.10.2023 3 | # Delete folders from FSLogix profile you added to redirection.xml 4 | ####################################################################### 5 | 6 | <# 7 | .SYNOPSIS 8 | Delete folders you added to the redirections.xml but are already inside the user profile disk 9 | 10 | .DESCRIPTION 11 | 12 | .EXAMPLE 13 | 14 | .NOTES 15 | Place the script inside the folder where the redirections.xml is located and enter the path the the users profile disks 16 | #> 17 | 18 | 19 | # Root Verfolder for FSL profiles 20 | $VHDRootFolder = "D:\FSLogix\Profiles" 21 | 22 | # Order, deren Inhalt gelöscht werden soll 23 | 24 | [XML]$xml = Get-Content "$PSScriptRoot\redirections.xml" 25 | $SelectedValues = $xml.FrxProfileFolderRedirection.Excludes.Exclude | Where-Object { $_."#text" -like "AppData*" } | Select-Object -ExpandProperty "#text" 26 | 27 | $Folders = @( 28 | $SelectedValues 29 | ) 30 | 31 | Function Set-AlternatingRows { 32 | [CmdletBinding()] 33 | Param( 34 | [Parameter(Mandatory,ValueFromPipeline)] 35 | [string]$Line, 36 | 37 | [Parameter(Mandatory)] 38 | [string]$CSSEvenClass, 39 | 40 | [Parameter(Mandatory)] 41 | [string]$CSSOddClass 42 | ) 43 | Begin { 44 | $ClassName = $CSSEvenClass 45 | } 46 | Process { 47 | If ($Line.Contains("")) 48 | { $Line = $Line.Replace("","") 49 | If ($ClassName -eq $CSSEvenClass) 50 | { $ClassName = $CSSOddClass 51 | } 52 | Else 53 | { $ClassName = $CSSEvenClass 54 | } 55 | } 56 | Return $Line 57 | } 58 | } 59 | 60 | function checkFileStatus($filePath) 61 | { 62 | $fileInfo = New-Object System.IO.FileInfo $filePath 63 | 64 | try 65 | { 66 | $fileStream = $fileInfo.Open( [System.IO.FileMode]::Open, [System.IO.FileAccess]::Read, [System.IO.FileShare]::Read ) 67 | $filestream.Close() 68 | return $false 69 | } 70 | catch 71 | { 72 | 73 | return $true 74 | } 75 | } 76 | 77 | function Get-NextFreeDriveLetter { 78 | 79 | [CmdletBinding()] 80 | param ( 81 | [string[]]$ExcludeDriveLetter = ('A-F', 'Z'), # Laufwerke ausschließen, die nicht verwendet werden sollen 82 | 83 | [switch]$Random, 84 | 85 | [switch]$All 86 | ) 87 | 88 | $Drives = Get-ChildItem -Path Function:[a-z]: -Name 89 | 90 | if ($ExcludeDriveLetter) { 91 | $Drives = $Drives -notmatch "[$($ExcludeDriveLetter -join ',')]" 92 | } 93 | 94 | if ($Random) { 95 | $Drives = $Drives | Get-Random -Count $Drives.Count 96 | } 97 | 98 | if (-not($All)) { 99 | 100 | foreach ($Drive in $Drives) { 101 | if (-not(Test-Path -Path $Drive)){ 102 | return $Drive 103 | } 104 | } 105 | 106 | } 107 | else { 108 | Write-Output $Drives | Where-Object {-not(Test-Path -Path $_)} 109 | } 110 | } 111 | 112 | function vhdmount($v) { 113 | try { 114 | $VHDNumber = Mount-DiskImage -ImagePath $v -NoDriveLetter -Passthru -ErrorAction Stop | Get-DiskImage 115 | $partition = Get-Partition -DiskNumber $VHDNumber.Number 116 | Set-Partition -PartitionNumber $partition.PartitionNumber -DiskNumber $VHDNumber.Number -NewDriveLetter $FreeDrive 117 | return "0" 118 | } catch { 119 | return "1" 120 | } 121 | } 122 | function vhdoptimize($v) { 123 | try { 124 | foreach ($folder in $folders) { 125 | if (Test-Path -Path $ProfileRoot\$folder -PathType Container) { 126 | Get-ChildItem -Path $ProfileRoot\$folder | Remove-Item -Recurse -Force -EA SilentlyContinue 127 | Write-Host "Content from '$ProfileRoot\$folder' deleted!" 128 | } else { 129 | Write-Host "'$ProfileRoot\$folder' doesn't exists or ist not a folder!" 130 | } 131 | } 132 | 133 | 134 | $r = 0 135 | } catch { 136 | $r = 1 137 | } 138 | } 139 | 140 | function vhddismount($v) { 141 | try { 142 | Dismount-DiskImage $v -ErrorAction stop 143 | return "0" 144 | } catch { 145 | return "1" 146 | } 147 | } 148 | 149 | # Get the next free drive letter to mount the profile disk 150 | $FreeDrive = Get-NextFreeDriveLetter 151 | $FreeDrive = $FreeDrive -replace ".$" 152 | $ProfileRoot = ($FreeDrive + ":" + "\" + 'Profile') 153 | 154 | $vhds = (get-childitem $VHDRootFolder -recurse -Include *.vhd,*.vhdx).fullname 155 | [System.Collections.ArrayList]$info = @() 156 | $t = 0 157 | foreach ($vhd in $vhds) { 158 | $locked = checkFileStatus -filePath $vhd 159 | if ($locked -eq $true) { 160 | "$vhd in use, skipping." 161 | continue 162 | } 163 | Write-Host -Foregroundcolor Yellow "Mounting '$vhd'" 164 | Write-Host `n 165 | $mount = vhdmount -v $vhd 166 | if ($mount -eq "1") { 167 | $e = "Mounting $vhd failed "+(get-date).ToString() 168 | break 169 | } 170 | $info.add((vhdoptimize -v $vhd)) | Out-Null 171 | $dismount = vhddismount -v $vhd 172 | if ($dismount -eq "1") { 173 | $e = "Failed to dismount $vhd "+(get-date).ToString() 174 | break 175 | } 176 | } 177 | 178 | Write-Host `n 179 | Read-Host "Press a key to exit" 180 | -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/FSLogix Rules assignments.ps1: -------------------------------------------------------------------------------- 1 | # ****************************************************** 2 | # D. Mohrmann, S&L Firmengruppe, Twitter: @mohrpheus78 3 | # FSLogix Rule assignments 4 | # ****************************************************** 5 | 6 | <# 7 | .SYNOPSIS 8 | This script uses the FSLogix Powershell Rules module to assign predefined FSL rules to users and/or groups. The templates are based on my blog post on mycugc.org 9 | 10 | .DESCRIPTION 11 | You have to install the module from the PSGallery. The script checks whether the PSGallery is a trusted repo. Otherwise you will be asked to trust the repo and install 12 | the module. Put the script in a directory with the rules and run the script in an elevated Powershell session. The FSLogix rules editor must be installed! 13 | 14 | .EXAMPLE 15 | .\FSLogix Rules assignment.ps1 16 | 17 | .NOTES 18 | Run as admin! If you want to use other groups then Domain Users and Domain Admins, you have to customize the script. 19 | The script can be used in several languages, which is important because the system accounts have different names. 20 | In German, for example, the name for the local service is "LOKALER DIENST". 21 | 22 | 23 | Version: 1.0 24 | Author: Dennis Mohrmann <@mohrpheus78> 25 | Creation Date: 2021-04-08 26 | Purpose/Change: 27 | 2021-04-08 Inital version 28 | 2021-04-10 Added notes 29 | 2021-04-15 Changed the method to find out the groups 30 | 2021-04-16 Check if Rules editor is installed 31 | #> 32 | 33 | Write-Host -ForegroundColor Gray "************************" 34 | Write-Host -ForegroundColor Gray "FSLogix Rules Assignment" 35 | Write-Host -ForegroundColor Gray "************************" 36 | Write-Host "" 37 | 38 | # Import/Istall FSL Rules module 39 | [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 40 | IF (!(Get-Module -ListAvailable -Name FSLogix.PowerShell.Rules)) 41 | { 42 | Write-Host -ForegroundColor Yellow "FSLogix Rules Powershell Module not installed!" 43 | $PSGallery =(Get-PSRepository -Name PSGallery).InstallationPolicy 44 | IF ($PSGallery -eq "Untrusted") 45 | { 46 | Write-Host -ForegroundColor Yellow "Unable to install the module, PSGallery repository is not a trusted repo! Do you want to trust the PSGallery repo?" 47 | $Q = Read-Host "( Y / N )" 48 | IF ($Q -eq 'Y') 49 | { 50 | Set-PSRepository -Name PSGallery -InstallationPolicy Trusted 51 | } 52 | ELSE { 53 | Write-Host -ForegroundColor Red "Aborted by the user!" 54 | BREAK 55 | } 56 | } 57 | } 58 | 59 | IF (!(Get-Module -ListAvailable -Name FSLogix.PowerShell.Rules)) 60 | { 61 | Write-Host -ForegroundColor Yellow "Installing the FSLogix Rules Powershell module" -NoNewLine 62 | Install-Module FSLogix.PowerShell.Rules -Force | Import-Module FSLogix.PowerShell.Rules 63 | Write-Host -ForegroundColor Green "...Ready!" 64 | } 65 | 66 | # Check if FSL rules editor is installed 67 | IF (!(Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object {$_.DisplayName -eq "Microsoft FSLogix Apps RuleEditor"})) 68 | { 69 | Write-Host -ForegroundColor Yellow "FSLogix Rules Editor is NOT installed, please install and run the script again!" 70 | BREAK 71 | } 72 | 73 | # Define system accounts locale 74 | Write-Host -ForegroundColor Yellow "Getting group and user locale" -NoNewLine 75 | $NETWORK = ((New-Object System.Security.Principal.SecurityIdentifier ('S-1-5-2')).Translate( [System.Security.Principal.NTAccount])).Value 76 | $NETWORKSERVICE = ((New-Object System.Security.Principal.SecurityIdentifier ('S-1-5-20')).Translate( [System.Security.Principal.NTAccount])).Value 77 | $LOCALSERVICE = ((New-Object System.Security.Principal.SecurityIdentifier ('S-1-5-19')).Translate( [System.Security.Principal.NTAccount])).Value 78 | $SYSTEM = ((New-Object System.Security.Principal.SecurityIdentifier ('S-1-5-18')).Translate( [System.Security.Principal.NTAccount])).Value 79 | 80 | # Define Domain group locale 81 | [string] $krbtgtSID = (New-Object Security.Principal.NTAccount $env:userdomain\krbtgt).Translate([Security.Principal.SecurityIdentifier]).Value 82 | $DomSID = $krbtgtSID.SubString(0, $krbtgtSID.LastIndexOf('-')) 83 | $DomUsers = (Get-WmiObject -Query 'Select * FROM Win32_Group' | Where-Object {$_.SID -eq "$DomSID-513"}).Name 84 | $DomAdmins = (Get-WmiObject -Query 'Select * FROM Win32_Group' | Where-Object {$_.SID -eq "$DomSID-512"}).Name 85 | Write-Host -ForegroundColor Green "...Ready!" 86 | 87 | # Import PS module 88 | Import-Module FSLogix.PowerShell.Rules 89 | 90 | # Rules assignments 91 | Write-Host -ForegroundColor Yellow "Assigning users and local accounts to rules" -NoNewLine 92 | # Startmenü Layout Rule 93 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-Layout-Users.fxa" -WellKnownSID S-1-5-21domain-513 -GroupName "$env:USERDOMAIN\$DomUsers" -RuleSetApplies 94 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-Layout-Users.fxa" -WellKnownSID S-1-5-21domain-512 -GroupName "$env:USERDOMAIN\$DomAdmins" 95 | 96 | # Startmenü items Rule 97 | $( 98 | if (!(Test-Path -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start)) 99 | { 100 | New-Item -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device -Name Start -Force 101 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderDocuments -Value 0 102 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderDocuments_ProviderSet -Value 1 103 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderPictures -Value 0 104 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderPictures_ProviderSet -Value 1 105 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderSettings -Value 0 106 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name AllowPinnedFolderSettings_ProviderSet -Value 1 107 | New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Start -Name HidePowerButton -Value 1 108 | } 109 | ) | Out-Null 110 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-Items.fxa" -WellKnownSID S-1-5-21domain-513 -GroupName "$env:USERDOMAIN\$DomUsers" 111 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-Items.fxa" -WellKnownSID S-1-5-21domain-512 -GroupName "$env:USERDOMAIN\$DomAdmins" -RuleSetApplies 112 | 113 | # Startmenü Win-X Admin Rule 114 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-WinX-Admins.fxa" -WellKnownSID S-1-5-21domain-513 -GroupName "$env:USERDOMAIN\$DomUsers" 115 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-WinX-Admins.fxa" -WellKnownSID S-1-5-21domain-512 -GroupName "$env:USERDOMAIN\$DomAdmins" -RuleSetApplies 116 | 117 | # Startmenü Win-X User Rule 118 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-WinX-Users.fxa" -WellKnownSID S-1-5-21domain-513 -GroupName "$env:USERDOMAIN\$DomUsers" -RuleSetApplies 119 | Add-FslAssignment -Path "$PSScriptRoot\Startmenu-WinX-Users.fxa" -WellKnownSID S-1-5-21domain-512 -GroupName "$env:USERDOMAIN\$DomAdmins" 120 | 121 | # Startmenü Windows-Sicherheit Rule 122 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-21domain-513 -GroupName "$env:USERDOMAIN\$DomUsers" -RuleSetApplies 123 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-21domain-512 -GroupName "$env:USERDOMAIN\$DomAdmins" 124 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-2 -GroupName "$NETWORK" 125 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-20 -GroupName "$NETWORKSERVICE" 126 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-18 -GroupName "$SYSTEM" 127 | Add-FslAssignment -Path "$PSScriptRoot\Windows Security-Startmenu.fxa" -WellKnownSID S-1-5-18 -GroupName "$LOCALSERVICE" 128 | Write-Host -ForegroundColor Green "... Ready!" 129 | Write-Host -ForegroundColor Yellow "Please check the rules!" -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/README.md: -------------------------------------------------------------------------------- 1 | # FSLogix start menu rules for RDSH 2019 2 | This script uses the FSLogix Powershell Rules module to assign predefined FSL rules to users and/or groups. The rules templates are based on my blog post on mycugc.org. 3 | You have to install the module from the PSGallery. The script checks whether the PSGallery is a trusted repo. Otherwise you will be asked to trust the repo and install 4 | the module. Put the script in a directory with the rules and run the script in an elevated Powershell session. The FSLogix rules editor must be installed! 5 | If you want to use other groups then Domain Users and Domain Admins, you have to customize the script. The script can be used in several languages, which is important because the system accounts have different names. In German, for example, the name for the local service is "LOKALER DIENST". 6 | 7 | 8 | -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-Items.fxa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-Items.fxa -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-Items.fxr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-Items.fxr -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-Layout-Users.fxa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-Layout-Users.fxa -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-Layout-Users.fxr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-Layout-Users.fxr -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-WinX-Admins.fxa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-WinX-Admins.fxa -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-WinX-Admins.fxr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-WinX-Admins.fxr -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-WinX-Users.fxa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-WinX-Users.fxa -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Startmenu-WinX-Users.fxr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Startmenu-WinX-Users.fxr -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Windows Security-Startmenu.fxa: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Windows Security-Startmenu.fxa -------------------------------------------------------------------------------- /Start menu rules RDSH 2019/Windows Security-Startmenu.fxr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mohrpheus78/FSLogix/65e7deef560ff641207317a2e1db83cfe3f75d26/Start menu rules RDSH 2019/Windows Security-Startmenu.fxr --------------------------------------------------------------------------------