Citrix Daas SDK

Set-BrokerSharedDesktop

Change the settings of a shared desktop.

Syntax

Set-BrokerSharedDesktop
   [-InputObject] <SharedDesktop[]>
   [-PassThru]
   [-InMaintenanceMode <Boolean>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->
Set-BrokerSharedDesktop
   [-MachineName] <String>
   [-PassThru]
   [-InMaintenanceMode <Boolean>]
   [-LoggingId <Guid>]
   [<CitrixCommonParameters>]
   [<CommonParameters>]
<!--NeedCopy-->

Description

Shared desktops are automatically created when a machine is added to a desktop group with a DesktopKind of ‘Shared’, and these inherit default properties. Use Set-BrokerSharedDesktop to change the configuration settings of an existing shared desktop.

To specify shared desktops, you can choose whether to update by machine name or by passing a SharedDesktop or an array of SharedDesktop objects. You can also use the Uid or an array of Uids instead.

Most properties of a shared desktop cannot be modified as these contain status information; for example DNSName, RegistrationState, and OSVersion. You can change only the maintenance mode setting with this cmdlet.

Many of the properties that can be set with Set-BrokerSharedDesktop can be set by using [Set-BrokerMachine](/en-us/citrix-daas-sdk/Broker/Set-BrokerMachine.html) (e.g. InMaintenanceMode). Using the [Set-BrokerMachine](/en-us/citrix-daas-sdk/Broker/Set-BrokerMachine.html) cmdlet, where possible, is the preferred behaviour.

See about_Broker_Desktops for more information about desktops.

Examples

EXAMPLE 1

Put the Machine1 shared desktop into maintenance mode.

Set-BrokerSharedDesktop DOMAIN\Machine1 -InMaintenanceMode $true
<!--NeedCopy-->

EXAMPLE 2

Bring all shared desktops currently in maintenance mode back into normal service.

Get-BrokerSharedDesktop -InMaintenanceMode $true | Set-BrokerSharedDesktop -InMaintenanceMode $false
<!--NeedCopy-->

Parameters

-InputObject

Specifies the desktop or array of desktops to modify. You can also use an integer Uid of the desktop instead.

Type: SharedDesktop[]
Position: 2
Default value: None
Required: True
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

-MachineName

Specifies the desktop to modify using its machine name (in the form ‘domain\machine’).

Type: String
Position: 2
Default value: None
Required: True
Accept pipeline input: True (ByPropertyName)
Accept wildcard characters: True

-PassThru

This cmdlet does not generate any output, unless you use the PassThru parameter, in which case it returns the affected record.

Type: SwitchParameter
Position: Named
Default value: False
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-InMaintenanceMode

Changes the maintenance mode setting of a desktop. When a desktop is in maintenance mode, it is not included as a candidate when brokering new sessions, and it does not participate in automatic power management (idle pool); however, it still responds to explicit power operations.

Type: Boolean
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

-LoggingId

Specifies the identifier of the high level operation that this cmdlet call forms a part of. Desktop Studio and Desktop Director typically create High Level Operations. PowerShell scripts can also wrap a series of cmdlet calls in a High Level Operation by way of the Start-LogHighLevelOperation and Stop-LogHighLevelOperation cmdlets.

Type: Guid
Position: Named
Default value: None
Required: False
Accept pipeline input: False
Accept wildcard characters: False

CitrixCommonParameters

This cmdlet supports the common Citrix parameters: -AdminAddress, -AdminClientIP, -BearerToken, -TraceParent, -TraceState and -VirtualSiteId. For more information, see about_CitrixCommonParameters.

CommonParameters

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

Inputs

Citrix.Broker.Admin.SDK.SharedDesktop

You can pipe SharedDesktop objects into this cmdlet instead of on the command line with the -InputObject parameter.

Outputs

None or Citrix.Broker.Admin.SDK.SharedDesktop

This cmdlet does not generate any output, unless you use the PassThru parameter, in which case it generates a Citrix.Broker.Admin.SDK.SharedDesktop object.

Set-BrokerSharedDesktop