-
XenApp 6.5 V4 Documentation Script Has Been Updated 10-Jan-2014
A very quick update to the XenApp 6.5 V4.05 script to 4.05a. If the Citrix XenApp 6.5 Mobility Pack is not installed an error was given for each of the three new Mobile Experice policy settings.
VERBOSE: 01/08/2014 18:34:50: Started Unfiltered User VERBOSE: 01/08/2014 18:34:50: Computer settings VERBOSE: 01/08/2014 18:34:50: ICA VERBOSE: 01/08/2014 18:34:50: Licensing VERBOSE: 01/08/2014 18:34:50: Power and Capacity Management VERBOSE: 01/08/2014 18:34:50: Server Settings VERBOSE: 01/08/2014 18:34:50: Virtual IP VERBOSE: 01/08/2014 18:34:50: XML Service VERBOSE: 01/08/2014 18:34:50: User settings VERBOSE: 01/08/2014 18:34:50: ICA VERBOSE: 01/08/2014 18:34:50: ICA\Adobe Flash Delivery VERBOSE: 01/08/2014 18:34:50: ICA\Audio VERBOSE: 01/08/2014 18:34:50: ICA\Bandwidth VERBOSE: 01/08/2014 18:34:50: ICA\Desktop UI VERBOSE: 01/08/2014 18:34:50: ICA\File Redirection VERBOSE: 01/08/2014 18:34:50: ICA\Mobile Experience Property 'AutoKeyboardPopUp' cannot be found on this object. Make sure that it exists. At C:\webster\XA65_Inventory_V41.ps1:2977 char:20 + If($Setting. <<<< AutoKeyboardPopUp.State -ne "NotConfigured") + CategoryInfo : InvalidOperation: (.:OperatorToken) [], RuntimeException + FullyQualifiedErrorId : PropertyNotFoundStrict<!--?xml:namespace prefix = "o" ns = "urn:schemas-microsoft-com:office:office" /--> Property 'MobileDesktop' cannot be found on this object. Make sure that it exists. At C:\webster\XA65_Inventory_V41.ps1:2981 char:20 + If($Setting. <<<< MobileDesktop.State -ne "NotConfigured") + CategoryInfo : InvalidOperation: (.:OperatorToken) [], RuntimeException + FullyQualifiedErrorId : PropertyNotFoundStrict Property 'ComboboxRemoting' cannot be found on this object. Make sure that it exists. At C:\webster\XA65_Inventory_V41.ps1:2985 char:20 + If($Setting. <<<< ComboboxRemoting.State -ne "NotConfigured") + CategoryInfo : InvalidOperation: (.:OperatorToken) [], RuntimeException + FullyQualifiedErrorId : PropertyNotFoundStrict VERBOSE: 01/08/2014 20:17:16: ICA\Multi-Stream Connections VERBOSE: 01/08/2014 18:34:50: ICA\Port Redirection VERBOSE: 01/08/2014 18:34:50: ICA\Printing VERBOSE: 01/08/2014 18:34:50: ICA\Security VERBOSE: 01/08/2014 18:34:50: ICA\Session limits VERBOSE: 01/08/2014 18:34:50: ICA\Shadowing VERBOSE: 01/08/2014 18:34:50: ICA\Time Zone Control VERBOSE: 01/08/2014 18:34:50: ICA\TWAIN devices VERBOSE: 01/08/2014 18:34:50: ICA\USB devices VERBOSE: 01/08/2014 18:34:50: ICA\Visual Display VERBOSE: 01/08/2014 18:34:50: Server Session Settings VERBOSE: 01/08/2014 18:34:50: Finished Unfiltered User
As usual, I had to turn to my PowerShell mentor and guru Michael B. Smith for a solution. Michael provided the following function:
Function validStateProp( [object] $object, [string] $topLevel, [string] $secondLevel ) { #function created 8-jan-2014 by Michael B. Smith if( $object ) { If( ( gm -Name $topLevel -InputObject $object ) ) { If( ( gm -Name $secondLevel -InputObject $object.$topLevel ) ) { Return $true } } } Return $false }
And the functions use in the script is done this way:
# added for the XenApp 6.5 Mobility Pack Write-Verbose "$(Get-Date): `t`t`tICA\Mobile Experience" If( ( validStateProp $Setting AutoKeyboardPopUp State ) -and ( $Setting.AutoKeyboardPopUp.State -ne "NotConfigured" ) ) { WriteWordLine 0 2 "ICA\Mobile Experience\Automatic keyboard display: " $Setting.AutoKeyboardPopUp.State } If( ( validStateProp $Setting MobileDesktop State ) -and ( $Setting.MobileDesktop.State -ne "NotConfigured" ) ) { WriteWordLine 0 2 "ICA\Mobile Experience\Launch touch-optimized desktop: " $Setting.MobileDesktop.State } If( ( validStateProp $Setting ComboboxRemoting State ) -and ( $Setting.ComboboxRemoting.State -ne "NotConfigured" ) ) { WriteWordLine 0 2 "ICA\Mobile Experience\Remote the combo box: " $Setting.ComboboxRemoting.State }
And with that quick fix the script will run with no errors if the Mobility Pack is not installed.
VERBOSE: 01/08/2014 20:17:15: Started Unfiltered User VERBOSE: 01/08/2014 20:17:16: Computer settings VERBOSE: 01/08/2014 20:17:16: ICA VERBOSE: 01/08/2014 20:17:16: Licensing VERBOSE: 01/08/2014 20:17:16: Power and Capacity Management VERBOSE: 01/08/2014 20:17:16: Server Settings VERBOSE: 01/08/2014 20:17:16: Virtual IP VERBOSE: 01/08/2014 20:17:16: XML Service VERBOSE: 01/08/2014 20:17:16: User settings VERBOSE: 01/08/2014 20:17:16: ICA VERBOSE: 01/08/2014 20:17:16: ICA\Adobe Flash Delivery VERBOSE: 01/08/2014 20:17:16: ICA\Audio VERBOSE: 01/08/2014 20:17:16: ICA\Bandwidth VERBOSE: 01/08/2014 20:17:16: ICA\Desktop UI VERBOSE: 01/08/2014 20:17:16: ICA\File Redirection VERBOSE: 01/08/2014 20:17:16: ICA\Mobile Experience VERBOSE: 01/08/2014 20:17:16: ICA\Multi-Stream Connections VERBOSE: 01/08/2014 20:17:16: ICA\Port Redirection VERBOSE: 01/08/2014 20:17:16: ICA\Printing VERBOSE: 01/08/2014 20:17:16: ICA\Security VERBOSE: 01/08/2014 20:17:16: ICA\Session limits VERBOSE: 01/08/2014 20:17:16: ICA\Shadowing VERBOSE: 01/08/2014 20:17:16: ICA\Time Zone Control VERBOSE: 01/08/2014 20:17:16: ICA\TWAIN devices VERBOSE: 01/08/2014 20:17:16: ICA\USB devices VERBOSE: 01/08/2014 20:17:16: ICA\Visual Display VERBOSE: 01/08/2014 20:17:16: Server Session Settings VERBOSE: 01/08/2014 20:17:16: Finished Unfiltered User VERBOSE: 01/08/2014 20:17:16: VERBOSE: 01/08/2014 20:17:16: Finished Processing Citrix IMA Policies
NOTE: This script is continually updated. You can always find the most current version by going to https://carlwebster.com/where-to-get-copies-of-the-documentation-scripts/
Thanks
Webster
January 10, 2014
PowerShell, XenApp 6.5