To create a correctly formatted File GPP, follow the below guidelines.
Computer File GPP
$XMLItemAttributes = ("clsid","disabled","name","status","image","changed","uid","bypassErrors","desc","removePolicy","PRIMARYEND","action","fromPath","targetPath","readonly","archive","hidden","suppress","RUNONCE","SUBEND")
User File GPP
$XMLItemAttributes = ("clsid","disabled","name","status","image","changed","uid","bypassErrors","userContext","desc","removePolicy","PRIMARYEND","action","fromPath","targetPath","readonly","archive","hidden","suppress","RUNONCE","SUBEND")
$XMLItemAttributes values
clsid - This is the clsid of the GPP file item. GPP clsid Reference
disabled - Enabled
or Disabled
. Icon color is indicating the action taken when pressed. On an enabled GPP it is red and on a disabled GPP is green.
name - Name of the GPP item.
status - A field that is updated when the value of the GPP is updated. Can be the same text as name or value.
image - This is the image that is shown in the Group Policy GUI. Image Reference
changed - Date the GPP is set. $DateUni = (Get-Date -Format u).TrimEnd('Z').
uid - Generate GUID. $GUID = ([guid]::NewGuid()).ToString().ToUpper().
bypassErrors - Sets the Stop processing items in this extension is an error occurs. Value of 1 is unchecked, value of 0 is checked.
userContext Sets the Run in logged-on user's security context (user policy option). Value of 1 is checked, value of 0 is unchecked. Only used in User File GPP.
desc Set's the Description text. By default includes the $FirmName and $Date. Useful to add additional notes about what the setting actually controls.
removePolicy - Sets the Remove this item when it is no longer applied. Value of 1 is checked, value of 0 is unchecked. Only works with Replace action.
PRIMARYEND - Internal script header to indicate XML subnode.


action - Identifies the action for the GPP.
| Action | Value |
|---|---|
| Create | C |
| Replace | R |
| Update | U |
| Delete | D |
fromPath - Source file path, for example: $DFSInstallFolder\$FirmShort\Default User Tile\user.bmp. Follows all GPP rules, so wildcards are an acceptable value.
targetPath - Destination file, for example: C:\ProgramData\Microsoft\User Account Pictures\user.bmp. Remember to include the destination filename.
readonly - Sets the Read-only attribute of the file. Value of 1 is checked, value of 0 is unchecked.
archive - Sets the Archive attribute of the file. Value of 1 is checked, value of 0 is unchecked.
hidden - Sets the Hidden attribute of the file. Value of 1 is checked, value of 0 is unchecked.
suppress - Sets the Suppress errors on individual file actions attribute of the file. Value of 1 is checked, value of 0 is unchecked.
RUNONCE - Signifies if the GPP should be set to Apply once and do not reapply. Valid values are YES or NO.
SUBEND - Internal script header to indicate XML subnode ending.
File GPP Example
See Deployment for instructions on updating GPP.
$XMLItemValues += @($FileCLSID,"0","olkexplorer.officeUI","olkexplorer.officeUI","0",$DateUni,$GUID,"1","1","Created By $FirmName on $Date for Office. Sets the Outlook default Quick Access Toolbar.","0","PRIMARYEND","C","$DFSInstallFolder\$FirmShort\Microsoft\Office$OfficeProduct\QuickAccessToolbar\olkexplorer.officeUI","%LOCALAPPDATA%\Microsoft\Office\olkexplorer.officeUI","0","1","0","0","Yes","SUBEND")
In this example, an officeUI file is going to be copied from a directory that has been setup under the DFS Install folder and copy it to the users LocalAppData folder.
