Skip to content

New-AppVentiXRegistryUserSetting

SYNOPSIS

Creates an AppVentiX UserSetting XML file for a registry configuration.

SYNTAX

InputObject

New-AppVentiXRegistryUserSetting -InputObject <psobject> [-FriendlyName <string>]
 [-Description <string>] [-ExecutionOrder <int>] [-ProcessAtLogin <bool>] [-ProcessAtRefresh <bool>]
 [-ProcessAtReconnectAndUnlock <bool>] [-MachineGroupFriendlyName <string[]>]
 [-ConfigShare <string>] [<CommonParameters>]

RegistryEntries

New-AppVentiXRegistryUserSetting -FriendlyName <string> -RegistryEntries <hashtable[]>
 [-Description <string>] [-ExecutionOrder <int>] [-ProcessAtLogin <bool>] [-ProcessAtRefresh <bool>]
 [-ProcessAtReconnectAndUnlock <bool>] [-MachineGroupFriendlyName <string[]>]
 [-ConfigShare <string>] [<CommonParameters>]

ALIASES

This cmdlet has the following aliases,

DESCRIPTION

Builds and saves an AppVentiX UserSetting XML file that defines a set of registry entries. Supports two input modes:

  • RegistryEntries mode: accepts a flat array of hashtables, each describing a single registry entry.
  • InputObject mode: accepts a pre-structured object (for example from an Ivanti export pipeline) that already contains the FriendlyName, Description and RegistryEntries.

Each registry entry is normalized (root key, value type and delete flag) before it is written to the XML.

EXAMPLES

EXAMPLE 1

New-AppVentiXRegistryUserSetting -FriendlyName 'Disable First Run' -RegistryEntries @( @{ RootKey = 'HKCU'; KeyPath = 'Software\Contoso\App'; ValueName = 'FirstRun'; ValueData = '0'; ValueType = 'DWord' } )

Creates a registry User Setting with a single registry value.

PARAMETERS

-ConfigShare

Specifies the path to the AppVentiX configuration share. You can omit this parameter if Set-AppVentiXConfigShare has been called.

Type: System.String
DefaultValue: $Script:AppVentix.ConfigShare
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: (All)
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-Description

Optional description for the UserSetting.

Type: System.String
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-ExecutionOrder

Execution order for the UserSetting. Defaults to 0.

Type: System.Int32
DefaultValue: 0
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-FriendlyName

Display name for the AppVentiX UserSetting.

Type: System.String
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: true
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-InputObject

A pre-structured object containing the FriendlyName, Description and RegistryEntries to import. When supplied, its values are used instead of the individual parameters.

Type: System.Management.Automation.PSObject
DefaultValue: ''
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: true
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-MachineGroupFriendlyName

One or more machine group friendly names to apply the setting to. Defaults to 'All Machine Groups'.

Type: System.String[]
DefaultValue: '@("All Machine Groups")'
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-ProcessAtLogin

Whether the setting is applied at login. Defaults to $true.

Type: System.Boolean
DefaultValue: True
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-ProcessAtReconnectAndUnlock

Whether the setting is applied at reconnect and unlock. Defaults to $false.

Type: System.Boolean
DefaultValue: False
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-ProcessAtRefresh

Whether the setting is applied at refresh. Defaults to $true.

Type: System.Boolean
DefaultValue: True
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: InputObject
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
- Name: RegistryEntries
  Position: Named
  IsRequired: false
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

-RegistryEntries

Array of hashtables describing registry entries. Each entry must contain: RootKey, KeyPath. Optional keys: ValueName, ValueData, ValueType, Action, DeleteKey.

Type: System.Collections.Hashtable[]
DefaultValue: '@()'
SupportsWildcards: false
Aliases: []
ParameterSets:
- Name: RegistryEntries
  Position: Named
  IsRequired: true
  ValueFromPipeline: false
  ValueFromPipelineByPropertyName: false
  ValueFromRemainingArguments: false
DontShow: false
AcceptedValues: []
HelpMessage: ''

CommonParameters

This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters.

INPUTS

OUTPUTS

NOTES

Function : New-AppVentiXRegistryUserSetting Author : John Billekens Copyright : (c) John Billekens Consultancy & AppVentiX Version : 2026.312.2000