Archive | October, 2012

Documenting Citrix XenApp 6.5 Inventory Assessment Script – Windows PowerShell

22 Oct

Imagine yourself in a situation where you have to capture the entire XenApp 6.5 Farm information to understand what the customers have in their environment. The traditional way to understand the environment is  to sit down multiple times with the CTX Architects/Admins to understand the details of infrastructure and even then missing on important details. This script will document whatever you see under the Citrix AppCenter Console and the output can be copied to a txt or word document.

My Testing results

I ran the script in my environment and generated the output as per the figures mentioned below. I am listing down certain requirements and things I learnt during the execution:

Step 1:

  • Download the Citrix XenApp 6.5 PowerShell SDK and simply go through the typical installation
  • Downloaded the Citrix XenApp Group Policies and place the files under two folders
    • C:\Windows\System32\WindowsPowerShell\v1.0\Modules, in a new folder named Citrix.GroupPolicy.Commands
    • C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules, in a new folder named Citrix.GroupPolicy.Commands
  • Make sure you open the File Properties of Citrix.GroupPolicy.Commands.psm1 file and click on Unblock and click Apply and OK. If you don’t go through this step you will get an error during importing of module


  • Open Windows PowerShell console and type Set-ExecutionPolicy RemoteSigned
  • Open Windows PowerShell screen and type import-module Citrix.GroupPolicy.Commands


  • Download the script from Script and place the script under the C:\XAInventory folder
  • Click Start – All Programs – Citrix – XenApp 6.5 Server SDK – Windows PowerShell with Citrix XenApp 6.5 Server SDK
  • Navigate to C:\XAInventory folder and type .\XA65_Inventory.ps1 |out-file .\XA65Farm.txt
  • Copy the output from C:\XA65Farm\XA65Farm.txt to a Word Document for better reading and formatting.


  • Analyze the customer environment with complete detailed information for the XenApp 6.5 infrastructure

Inventory Output Results:

XenApp Inventory Output

A lot more is captured with respect to Server, Zones, Applications etc. Check it out yourself to experience the in depth details

Source: (Thanks)
Lets give some respect and thanks to the author of this script Carl Webster because of whom we all will be saving none less than 30-40 hours of efforts in capturing details of the XenApp Environment. He has written a 13 page blog on what all information is captured in the inventory script. Note if you check out his blog there are scripts for multiple versions of XenApp 6.5/6/5

If you like this post please leave your valuable comments

Best Regards,
Aresh Sarkari

Latest Citrix RemotePC feature with XenDesktop5.6 FP1–RemotePC VS RDP

4 Oct

With the recent launch of XenDesktop 5.6 Feature Pack (FP) 1 Citrix released a great feature known as the Remote PC. The Remote PC feature allows end-users to access their laptops/desktops on any device (Tablets, Mobile Phones or even other remote laptop and desktop) and anywhere (in the office, home and road). Citrix launched this feature for enterprises that are yet not ready to move into VDI mode and this solution allows end-users to continue using their desktop/laptop devices. The device that will be accessing the office desktop/laptop will require Citrix Receive to be installed beforehand.

Architecture for Remote PC to work:Citrix RemotePC (XenDesktop 5.6 FP1)

Many of you would ask what is the difference between RemotePC VS traditional RDP?


Remote PC

Works well on Microsoft platform. However, no standard or official applications are available on cross platforms such as iOS, Android and Blackberry You can access your desktop on multiple platforms such as iOS, Android and Blackberry with a single Citrix Receiver
No Standard apps available from Microsoft. All 3rd Party un-popular applications available at the App Stores for alternativesOfficial Citrix Receiver application integration that offers built-in Virtual Keyboard, ShareFile
No OS/Application Shell enhancement provision available with Microsoft RDP solutionCitrix Mobility Pack enhancement to make Windows OS and Applications touch and type friendly

Typical Use Case Scenarios:
Use Case 1: The customer has a desktop at his desk and is leaving for a meeting and wants to access the desktop from his/her tablet.

Solution: Simply install the Virtual Desktop Agent (VDA) on the desktop and the end-user can access their desktop on any device and from any where


  • The enterprise doesn’t have the CAPEX to invest in a full blown VDI infrastructure. Simply enable this feature and take advantage from your existing infrastructure and investments.
  • Access to the resources from their mobile devices such as iPad, iPhone, Windows Phone, Windows 8 RT, Android Phones, Android Tablets
  • There is no resource sharing hence no complaints from end-users regarding performance degradation
  • Whatever Access, Software, Storage end-user carries remain the same while accessing on mobile devices
  • Leverage existing Electronic Software Distribution software to deploy the VDA on Desktop/Laptops within the enterprise

Video of the RemotePC Installation:

Building a XenApp 6.5 Farm inside your Lab Infrastructure – (Part 1)

1 Oct

Recently, I am setting up a poor man’s lab of Citrix XenApp 6.5 (64 bit). The reason to call it a poor man’s lab is because of the equipment in use. Though, I am complaining about the equipment I will tell you “my way” of efficiently setting up XenApp on a desktop class  Dell machine. My configuration is as follows:

Desktop Configuration:Dell Desktop Hardware Configuration

Preparatory Steps:

  • Install Windows 2008 R2 with Hyper-V as the choice of operating system on the Desktop.
  • Connect the desktop with internet to get all the Windows Updates
  • My next big thing was to create a Windows 2008 R2 EE template to create multiple VM’s and not waste time in creating individual virtual machines
  • Create a new Virtual Machine with Windows 2008 R2 EE SP1 and install all the Windows Updates
  • Install Features such as .Net 4 and Telnet Client from the “Add Features” as its reusable component on all VM’s 
  • Enable the ICMP inbound rule under the Windows Firewall port else you would be clueless during your troubleshooting
  • Sysprep the image Selection Option OOBE === Check Generalize === Shutdown. Your VM template is ready for use

Citrix Architecture for the lab

  • Plan to install Citrix XenApp 6.5 on 4 VM’s with the following server role breakup

Virtual Machine



VM1Active Directory/Citrix Licensing/Remote Desktop Licensing400 – 700 MB
VM2Citrix Web Server/SQL 2008 R2 Express/File Server400 – 700 MB
VM3Citrix XenApp1 (Application Streaming/Publishing)Static 700 MB
VM4Citrix XenApp2 (Hosted Shared Desktop)Static 700 MB

Note: Clubbing up of roles like I have done is strictly for lab environments. Production environments should be sized and designed in a different way

Architecture Diagram

Citrix XenApp 6.5 Lab Infrastructure

List of my Best Practices:

  • Create a reusable Sysprep template to create multiple VM’s on the fly
  • Enable the ICMP inbound rule on all VM’s else you would be clueless during troubleshooting
  • Use Dynamic Memory for all your VM’s. Predefine the values for Startup and Maximum RAM options under VM Settings. I must say this feature is a savior when building labs with restrictive resources
  • Make sure the Citrix Licensing file (*.lic) carries the exact hostname of the virtual machine as it’s case sensitive. Simply type hostname under the command prompt and copy/paste the same while generating Citrix license file from
  • In my case, the SQL Server Express is installed on the Web server. You will have to create a custom firewall rule to open the port number 1433 for all SQL related communication between the VM’s
  • During the Citrix installation make sure you select the “Install XenApp Server” option as this option brings in the convenience of installing all the prerequisite such as RDS, IIS components etc. automatically

Though, I am not sharing the step by step information on how to install each and every role because a lot of information is already available from Citrix & Microsoft and don’t want to make the blog lengthy.

I will be writing a series of blog on topics such as:

  • Application Publishing (Applications installed locally on Citrix XenApp Server)
  • Application Streaming (Application Streaming Server/Client Side)
  • User Profile Management (Separating the user profile using Citrix Profile Management)

If you like this blog please leave your comments

Best Regards,
Aresh Sarkari