Setting up an Android Emulator for use with Citrix XenApp 6.5 Mobile Application SDK

One of the coolest SDKs I’ve seen come out in quite a while is the Citrix XenApp 6.5 Mobile Application SDK. As of this writing, only the Android version of the Citrix Receiver is supported so I will show you how to set up an Android emulator with the Citrix Receiver for testing purposes.

One of the coolest SDKs I’ve seen come out in quite a while is the Citrix XenApp 6.5 Mobile Application SDK. Citrix defines the XenApp 6.5 Mobile Application SDK as “… a rich tool kit for developers to write touch-friendly, mobilized applications that are hosted on Citrix XenApp and delivered to any device with Citrix Receiver. These mobilized applications are able to leverage a wide set of mobile device functionality including GPS, sensors, cameras, and device buttons in the same way that locally running, native applications do.”

As of this writing, only the Android version of the Citrix Receiver is supported (iOS is on the way).  Since I do not own any Android devices and I was anxious to get started, I had to set up an emulator and install the Citrix Receiver to get going with the SDK.  Here is how I did it.

 

Install the Android SDK

Go to the Android SDK download page (http://developer.android.com/sdk/index.html) and pick the correct installer for your platform. I’m using Windows, so I chose the .exe installer file.  After you run this .exe, you still do not have the emulator.  The reason for this is the Android SDK archive initially contains only the basic SDK tools. It does not contain an Android platform or any third-party libraries. You must install the Platform-tools and at least one version of the Android platform using the SDK Manager.

Android SDK Manager

I installed the Android SDK Platform-tools and all options for Android 4.0.3.

After the install completes, be sure to add %ProgramFiles%\Android\android-sdk\platform-tools to your PATH environment variable.  This will be handy later for installing the Citrix Receiver.

 

Create an Android Virtual Device

After the installs complete, you can launch Android Virtual Device Manager (AVD Manager). This can be found in the Windows start menu under Android SDK Tools \ AVD Manager. AVD Manager is used to create various virtual devices running the Android OS.

Android Virtual Device for XenApp 6.5 Mobile Appliction SDK
As you can see, I created an Android 4.0.3 device with 100 MiB of local storage. The more storage you add to your AVD, the longer it will take to boot. Since this AVD is only being used for XenApp 6.5 testing, I only allocated 100 MiB. The first boot of your AVD will take a little longer than subsequent boots.

 

Download the Citrix Receiver for Android

Now that we have a functioning Android emulator, we need to get the Citrix Receiver installed. The first thing we need to do is download the .apk (Android Package) file. Normally, I would just go to http://www.citrix.com/receiver and choose “Android”. But, as of this writing, when you do that, you are redirected to the Android Marketplace. Unfortunately, Android Marketplace does not work on the Android Emulator. So, here is what you can do instead:
Go to http://www.citrix.com/downloads and choose “Receiver for Android” from the drop down list. From there, you can select the Android client and download the .apk.

 

Install the Citrix Receiver for Android

Ok, so now we have a functioning Android emulator and the Citrix Receiver downloaded. The final step is to install the Citrix Receiver onto the emulator. Here’s how:

  1. Copy the .apk file to %ProgramFiles%\Android\android-sdk\tools
  2. Open a command prompt and change the directory to %ProgramFiles%\Android\android-sdk\tools
  3. With the AVD you created running, execute the following command:
adb install <name of Citrix Receiver>.apk

Citrix Receiver for Android

 

You now have a fully functional Citrix Receiver running on an Android emulator.  My next post shows you how to set up a development environment to utilize the Mobile Application SDK and compile some of the examples.

 

It is official. I have joined Splunk!

With the new year comes a new direction for me – I have officially joined Splunk as a Solutions Architect.

I am very happy to announce that I have officially joined the team at Splunk as a Solutions Architect.  As many of you may already know, my website is a place where I share a few articles and a lot of open-source code.  Most of the code I have distributed from this website is mainly focused on giving you insight into what is going on in your Citrix environments (Web Interface for Resource Manager, Web Interface Access Control Center, Configuration Logging, Project Raley, etc.)  Although I get ideas for these projects from the community and my own professional experiences, all of the code has been developed on my own personal time as a hobby and community contribution.

Turning a Hobby and a Passion into a Job

All that being said, joining Splunk allows me to turn a hobby and a passion into a full-time job.  On top of that, I get to work with a close friend, co-presenter, and fellow CTP/MVP Brandon Shell on a daily basis.  We will be working on building Splunk solutions around the Citrix Enterprise stack.

What Lies Ahead

This website is going to stick around and I’ll be writing more articles and open-source code.  I also plan on writing some Splunk articles here and on the official Splunk blogs.  I’m looking forward to what’s ahead!

Citrix Synergy Barcelona 2011 Keynote Live Blog

Citrix Synergy 2011 is going on now in Barcelona. I’ll be live blogging the event here. Expect to see more information about recent Citrix acquisitions.

Citrix Synergy 2011 is going on now in Barcelona. I’ll be live blogging the event here. Expect to see more information about recent Citrix acquisitions. I will be tweeting the event as well. Be sure to follow @CitrixSynergy if you are not already. Continue reading “Citrix Synergy Barcelona 2011 Keynote Live Blog”

Citrix Acquires ShareFile – a Citrix Service Provider Perspective

Citrix Systems recently completed the acquisition of a company called ShareFile. In this post, I take the perspective of a Citrix Service Provider (CSP) and dream up some ways that ShareFile could be used to add value to CSP subscribers.

Citrix Systems recently completed the acquisition of a company called ShareFile.  ShareFile provides several services including file synchronization among many devices and creating custom-branded, password-protected space where you can exchange business files with clients easily and securely.

Brian Madden wrote an analysis on this acquisition already, but I wanted to share how this service can be used to supplement a Citrix Service Provider’s (CSP) architecture. 

File Transfer to the Cloud

One challenge that many CSP subscribers face is data upload to the cloud.  Now, Citrix has client drive mapping that can help transfer files from the subscriber’s local workstation to the CSP cloud, but explaining the nuances of client drive redirection to subscribers can be a challenge.  Plus, the Citrix virtual channel for client drive mapping is not optimized for file transfers.

Now, image if the subscriber had a special folder on their workstation where they can put a file and it “magically” shows up in the CSP cloud.  That would be cool and ShareFile makes this possible (to be fair, DropBox could be used to do the same thing).

 

Mobile Device Synchronization and Offline File Access

People use multiple devices to access CSP cloud resources.  Imagine ShareFile synchronization components being available as a Citrix Receiver plugin.  Then, certain files could be made available on mobile devices.  Picture this, you need to access an Excel spreadsheet you created in the CSP’s cloud from your iPad and you do not have WiFi or 3G access available.  Normally, you would be out of luck.  But, if this file was synchronized to your iPad via ShareFile, you would have mobile offline access to the file. 

Sharing Files with non-CSP Subscribers

ShareFile allows you to create a custom-branded, password-protected space where you can exchange business files with clients easily and securely.  This is kind of ShareFile’s forte.  CSP subscribers oftentimes want to share a file beyond the boundaries of the CSP’s firewall.  ShareFile makes this as easy as sending an email.  Since everything is encrypted along the way, could this also be used as a make-shift email encryption mechanism?  The following graphic depicts all the pieces together:

 

 

 

Citrix XenApp 6.0 to XenApp 6.5 PowerShell Upgrade Utility Under the Hood

Citrix recently released XenApp 6.5. However, there is not a way to do an in-place upgrade from XenApp 6.0 to XenApp 6.5. This means that the Citrix administrator will have to uninstall XenApp 6.0 components and install XenApp 6.5 components. Citrix released a PowerShell utility to help in this process, and in this post I break that utility down into a Visio flowchart to you can understand what is going on behind the scenes.

Ever since I was a kid, I liked taking things apart.  Citrix recently came out with a PowerShell tool to help administrators turn XenApp 6.0 servers into XenApp 6.5 servers because unfortunately (or fortunately depending on the way you look at it), there is no in-place upgrade option from XenApp 6.0 to XenApp 6.5.

This utility is a PowerShell script that performs the following:

  • Checks to see if XenApp 6.0 is installed or not, and if the XenApp 6.5 installer is available.
  • Prompts for a password to silently run the install process after reboot.
  • Uninstalls XenApp 6.0 components. By default these include the Online-Plugin, Management Consoles, and XenApp Application Delivery role. Other components are included in the script and can be enabled for automatic removal.
  • Installs XenApp 6.5 and, by default, joins the server to the farm as a worker.
  • Verifies the join is successful by checking to see if the IMA service is running.
I think this script is really cool so I had to take it apart to see just how the script was doing these things.  I made some notes in the form of a flowchart and have provided the flowchart here for your viewing pleasure.

 

-or-
– or-
Click the picture below for .gif image of the flowchart

You can download the tool from Citrix’s website -> http://support.citrix.com/article/CTX130614

Export and Import Citrix XenApp 6 Published Applications Using PowerShell

Exporting and Importing published applications in Citrix XenApp used to be a tedious process. Now, thanks to XenApp PowerShell Cmdlets, this process is much easier and more flexible. No uber scripting skills needed.

Exporting and importing Citrix XenApp 6 published applications using PowerShell is super easy. In this article, I will show you how to export all or some of your XenApp 6 published applications into a XML file. Then, I will show you how to import those applications while overriding certain application properties like Worker Group and Server Names.

note Note: before you get started, be sure to check out this post on how to install the Citrix XenApp 6 PowerShell Cmdlets.

 

Exporting Citrix XenApp 6 Published Applications

The first thing we need to do is export some published applications from an existing XenApp 6 farm. In this example, I will only export applications in a certain folder instead of the entire application inventory.

Get-XAApplicationReport * | ?{$_.FolderPath.StartsWith("Applications/Testing")} | Export-Clixml c:\testingApps.xml

 

Explanation

So, there are 3 parts to this export.

  1. Get-XAApplicationReport gets all properties of a published application. If you are familiar with MFCOM, the Get-XAApplicationReport command is similar to calling LoadData(1) on an application object.

    FYI – There is a command called Get-XAApplication, but that command doesn’t get all properties of a published application.

    Anyway, if you don’t use the Get-XAApplicationReport command, you won’t get all your application properties and you will be sad.

  2. ?{$_.FolderPath.StartsWith("Applications/Testing")} looks at each application object that Get-XAApplicationReport returns and filters out all applications whose folder path does not start with “Applications/Testing”.

    Note to Citrix – it would be nice to have some filtering built into the Get-XAApplicationReport command. You will notice in the example, that I have to get all the published applications in a farm and filter out what I do not want. That is a pretty expensive operation. It would be better to just get what I want from the get go.

  3. Export-Clixml saves it all to a XML file called testingApps.xml.

 

Importing Citrix XenApp 6 Published Applications

Now that you have the applications exported to a XML file, you can import those applications to another farm. Here is one way to do this:

Import-XmlCli c:\testingApps.xml | New-XAApplication -ServerNames [servers] -WorkerGroupNames $null

The cool thing about this is that you can override settings during an import. For instance, the original farm I exported from had published applications assigned to Worker Groups rather than Servers. In the destination farm, I want to publish the applications to Servers rather than Worker Groups. You can actually override a multitude of properties during the import process which will make your life easier.

note Note: if you do not create the folder structure beforehand, you will get the following error when you try to import:

New-XAApplication : Cannot find folder with path Applications/Testing (0x80160001)
At line:1 char:70
+ Import-Clixml C:\testingApps.xml | New-XAApplication <<<<
    + CategoryInfo : InvalidResult: (Applications/Testing:String) [New-XAApplication], CitrixException
    + FullyQualifiedErrorId : ComApp.GetFolderId,Citrix.XenApp.Commands.NewAppCmdlet

So, check out this article on migrating a folder structure.

 

Migrate Citrix XenApp 6 Folder Structure Using PowerShell

There are times when you need to migrate all or part of your Citrix XenApp 6 folder structure from one farm to another, or just back up a XenApp 6 folder structure. This post will show you how to accomplish this using PowerShell.

There are times when you want to migrate a folder structure from one Citrix XenApp 6 farm to another.  For instance, if you maintain separate test, quality assurance, and production farms and need to migrate folders and applications between the farms.  Fortunately, this is super easy in XenApp 6 using PowerShell.

note Note: before you get started, be sure to check out this post on how to install the Citrix XenApp 6 PowerShell Cmdlets.

 

Export Specified Folders

You can export your entire folder structure, or just certain parts of it.  In the example below, I will export only the “Testing” folder (see the screen shot below).

Here is how to export just the “Testing” folder and its subfolders using PowerShell to a XML file called “TestingFolders.xml”:

Get-XAFolder -FolderPath "Applications/Testing" -Recurse | Export-Clixml c:\TestingFolders.xml

 

Explanation

Well, the cool thing about PowerShell is that it is pretty readable, so I don’t think this command needs a lot of explanation. However, let’s look at the resulting XML file.

  Applications/Testing/Microsoft Office
  Applications/Testing/Sales
  Applications/Testing/Utilities
  Applications/Testing/Utilities/Microsoft
  Applications/Testing/Utilities/Citrix

No rocket science there either. It is just a list of folders. You could easily hand craft one of these XML files to create a folder structure. What I am going to do here is modify the folder path so that the folders get created in the “Applications/QA” folder and then save the file as “QAfolders.xml”. Here is what the XML file looks like now:

  Applications/QA/Microsoft Office
  Applications/QA/Sales
  Applications/QA/Utilities
  Applications/QA/Utilities/Microsoft
  Applications/QA/Utilities/Citrix

 

Import Folders

Now that you have your XML file, it is relatively easy to import. Here is how to do it:

Import-Clixml c:\QAFolders.xml | New-XAFolder

 

Here are the results:

 

Next Steps

So all this folder structure stuff is fine, but wouldn’t it be nice to import some apps into those folders? Of course it would. Here is how to export and import XenApp 6 published applications using PowerShell.

 

Citrix Synergy 2011 Keynote Live Blog

Citrix Synergy 2011 is going on now. I’ll be live blogging the event.

There will be a lot of news coming from Citrix Synergy 2011.  I’m using a new plugin to live blog the event.  Updates will be automatically updated in reverse chronological order (no need to refresh your browser – yeah Ajax!).

Here we go with the keynote:


 

May 25, 2011, 1:41 pm

#citrixsynergy End of keynote. Nothing follows.

May 25, 2011, 1:38 pm

#citrixsynergy @guspinto showing Citrix Receiver delivering a Mac desktop via XenDesktop. Gus sucks at Angry Birds!

May 25, 2011, 1:31 pm

#citrixsynergy Citrix Receiver can now deliver Android apps. So, now you can have Android apps on a Windows platform via Receiver.

May 25, 2011, 1:28 pm

#citrixsynergy End of message. But, in Steve Jobs fashion, there is “one” more thing. Although, now there are 2 more things.

May 25, 2011, 1:21 pm

#citrixsynergy OpenStack is being discussed now. Citrix is announcing Project Olympus to bring the power of OpenStack to enterprises. This will allow enterprises to build private cloud environments inside their own datacenter that works just like public cloud environments. This is a joint effort including players like Citrix, Dell, Rackspace, etc.

May 25, 2011, 1:09 pm

#citrixsynergy NetScaler Cloud Bridge helps bridge the gap between your enterprise and public clouds. You can run an app in a public cloud but keep the data in your local data center.

May 25, 2011, 12:59 pm

#citrixsynergy Follow-me data. Dropbox, Box.Net, enterprise data, etc. being synced on multiple devices. This data is stored in an encrypted (probably via XenVault) section of the client. Remote wipe, polices, admin control. This is some pretty sweet stuff.

May 25, 2011, 12:51 pm

#citrixsynergy NetScaler Cloud Gateway is one place to aggregate, orchestrate, and deliver SaaS, Web, and Windows apps. Receiver is a one stop shop for access to your enterprise and SaaS apps.

May 25, 2011, 12:43 pm

#citrixsynergy GoToManage for iPad will be free for a 1-to-1 session. Look for it in the App Store soon!

May 25, 2011, 12:37 pm

#citrixsynergy Brad Peterson showing the new Receiver. Published apps are alive and strong. It isn’t all about VDI or hosted virtual desktops – which is refreshing.

May 25, 2011, 12:31 pm

#citrixsynergy Google is deploying Citrix and Chromebooks internally. How cool is that…

May 25, 2011, 12:28 pm

#citrixsynergy Amit Singh from Google is coming on stage to talk about Chromebook and Citrix Reciver for Web. HTML 5 is the man! No need to download client – Citrix just works from the browser. Brad Peterson is showcasing a Chromebook with Receiver for Web. This is awesome.

May 25, 2011, 12:21 pm

#citrixsynergy XenClient XT is available for extreme security. This message will self destruct in 2 minutes…

May 25, 2011, 12:17 pm

#citrixsynergy Now, Mark is talking about XenClient. XenClient is now supported on more hardware – no more dependence on vPro (although full motion video and 3D will suffer a bit on non vPro).

May 25, 2011, 12:14 pm

#citrixsynergy GoToMeeting with HD faces is available for Beta today! 2 new ads are being shown in the keynote.

May 25, 2011, 12:12 pm

#citrixsynergy “Easier & simpler” lowers TCO and raises TVO. So “Easier & Simpler” is the pivot of an inverse proportion.

May 25, 2011, 12:04 pm

#citrixsynergy There are now 3 “PC”‘s – Public Cloud, Private Cloud, Personal Cloud. Is “Personal Cloud” taking things too far – I think maybe/maybe not. With the consumerization of IT, people are brining their compute environment with them wherever, whenever, on whatever device.

May 25, 2011, 11:58 am

#citrixsynergy Any, any, any is now whatever, whenever, wherever. TCO is being replace by TVO (Total Value of Ownership). TVO makes sense because the value can be more or less than the actual cost of something.

May 25, 2011, 11:49 am

#citrixsynergy on no! More “snack, dine, create” analogies. Although, the new term coined is BYO-3 – which makes sense. A lot of people bring multiple devices (laptop, tablet, phone). Also people are brining their own compute environment too (dropbox, cloud apps, gmail, etc.). Consumerization is alive and kicking in IT. Citrix is embracing this.

May 25, 2011, 11:41 am

#citrixsynergy Mark T “Hyper-V a great platform for XenDesktop”

May 25, 2011, 11:39 am

#citrixsynergy Kaviza is the subject. Complexity is “optional”.

May 25, 2011, 11:38 am

#citrixsynergy we’re going to talk a lot about the cloud. Tomorrow the DIA (Defense Intelligence Agency) will be presenting.

May 25, 2011, 11:36 am

#citrixsynergy And… wer’e off. Mark T on stage now. Standing room only.

May 25, 2011, 11:30 am

#citrixsynergy Brian Madden is live blogging too -> http://www.brianmadden.com/blogs/brianmadden/archive/2011/05/25/citrix-synergy-2011-san-francisco-opening-keynote-live-blog.aspx

May 25, 2011, 11:23 am

Watch the keynote live here -> http://www.citrixsynergy.com/sanfrancisco/learning/synergylive.html

May 25, 2011, 11:17 am

People are filing in to the keynote now. There is a DJ spinning some tunes as a rumored 5,500 attendees file in.


 

 

 

Citrix Acquires Cloud Control Panel Company EMS Cortex

Citrix acquired EMS Cortex – a cloud control panel company. This web-based control panel allows for provisioning of a multitude of resources including Microsoft Exchange, Citrix XenApp, Microsoft SharePoint, DNS, SQL, Hyper-V, and more.

citrix cortex

Citrix announced today that they have acquired a Cloud control panel company called EMS Cortex. EMS Cortex makes a web-based cloud control panel that automates the provisioning of an array of Microsoft Products including Exchange, SharePoint, OCS, Web Hosting, SQL Server, DNS, RDS, Microsoft Dynamics CRM, and Hyper-V.  The EMS Cortex control panel also automates the provisioning of Citrix XenApp applications and desktops.  I am personally very excited about this news because I use Cortex in my current job at Xcentric.

What is EMS Cortex?

In a multi-tenant hosting environment, it is very important to have a strict provisioning routine to ensure consistency.  EMS Cortex makes a web-based control panel to automate the provisioning process used in multi-tenant hosting environments.  Cortex provisions Active Directory OUs, user accounts, groups, file shares, SharePoint sites, Citrix XenApp resources, etc.  Through the use of Cortex, you no longer have to visit multiple consoles to provision users – just set up the user in Cortex and the rest is taken care of.  This is good because Cortex removes the human error factor.

As I mentioned before, we use Cortex at Xcentric.  Cortex is the centralized provisioning engine for our multi-tenant hosting environment.  There are a lot of good things about Cortex and some things I wish I could change (I’ve already started talking with Cortex about the things I wish I could change).  I’m hopeful that we, the community, will see even more Citrix-focused integration points in future releases.

How EMS Cortex Works

Cortex is a multi-tier application consisting of the following components:

  • SQL Database – for configuration, users, customers, auditing and reporting.
  • Web Services – for real time interaction with Active Directory and other hosted services.
  • Provisioning Engine – via Microsoft Message Queue (MSMQ), provisioning requests are dispatched to the provisioning engine.

The Cortex web application is loosely coupled with the other Cortex components. This loose coupling provides several security benefits, as the web server has no dependency on Active Directory it can essentially operate outside of the managed domain.  Cortex can also manage multiple domains.

cortex architecture Image source: http://ems-cortex.com/architecture/how-cortex-works.aspx

What will Citrix do with EMS Cortex?

Now, the things I’m about to share are purely off the top of my head and are not necessarily the direction Citrix intends on taking this product (although I hope they do).

Virtual Machine automation – ok, I kind of cheated on this one because Cortex already integrates with Hyper-V.  But this automation is solely based on System Center Microsoft Virtual Machine Manager.  So, it would be cool to provision VMs for XenServer and *gasp* VMware.  SCVMM is somewhat sketchy with VMware ESX and vSphere and there is currently no SCVMM integration with XenServer (although, there were some screenshots of SCVMM and XenServer at Synergy last year – not sure where that is now).  So, either SCVMM will have to amp up on vendor support or Cortex will need to go native API for vendors besides Microsoft.

Cloud bursting – this one goes along with the Virtual Machine automation.  Citrix has been working with Amazon Web Services, SoftLayer, and even has their Citrix Cloud Center (C3).  So, it would be cool to see some hooks built in for platforms like these.  Imagine being able to provision an tenant in one of the vendor clouds instead of provisioning local resources.

Access Gateway Policy provisioning – Cortex provides a lot of self-service functionality for tenants.  It would be cool to give tenants the ability to define Access Gateway policies tailored to their own needs without the help of a system administrator.

XenDesktop integration – currently, Cortex only supports hosted apps and desktops via XenApp.  It would be nice to see integration with XenDesktop.

PowerShell – the current API for Cortex is a mixture of web services and a somewhat proprietary API for the  MSMQ.  It would be cool to see some PowerShell cmdlets to interface with the provisioning lifecycle.

Workflow StudioCitrix Workflow Studio is all about infrastructure automation/orchestration.  Wouldn’t it be cool if Workflow Studio has activities to create a user that utilized the Cortex provisioning engine?  Workflow Studio already has an activity to create Active Directory users, but imagine an activity that used Cortex to create a user instead – thus provisioning all the other “stuff” like Exchange, SharePoint, file system, website access, etc. as well.  That would be cool.

Storage provisioning – one piece that we still have to provision manually at Xcentric is dedicated storage for each tenant.  It would be cool to see some kind of storage provisioning system – maybe pull in the StorageLink group?

Single tenant support – For the near term, the Cortex Cloud Control Panel will be offered as a standalone product on a subscription basis, as it was prior to the acquisition.  Cortex is great for multi-tenant environments, but it is also very helpful in a single tenant environment.  So, it would be cool to see Cortex rolled into one of the editions of XenDesktop or XenApp.

Postini integration – this is another feature that currently isn’t offered by Cortex.  Granted, Google gives you a cool utility to sync users with LDAP directories, but it would be even cooler if Cortex worked with Postini API’s directly.

I could keep making this list for a while.  Needless to say, I’m very excited about this acquisition.

How to Install the Citrix XenApp 6 PowerShell Cmdlets

PowerShell is the new API for Citrix XenApp starting with version 6. Whether you want to write interactive applications or work with your XenApp farm via command line, you first need to set up the XenApp 6 PowerShell SDK. This post will step you through setting up the Citrix XenApp 6 PowerShell SDK in your environment.

PowerShell is the new API for Citrix XenApp starting with version 6.  Whether you want to write interactive applications or work with your XenApp farm via command line, you first need to set up the XenApp 6 PowerShell SDK.  This post will step you through setting up the Citrix XenApp 6 PowerShell SDK in your environment.

Installing the Citrix XenApp 6 PowerShell cmdlets

Before we get started, you first need to download and install the Citrix XenApp PowerShell SDK (which includes the XenApp cmdlets). You can download the SDK here: http://community.citrix.com/display/xa/XenApp+6+PowerShell+SDK.

I recommend installing this on one of your XenApp 6 servers.  Technically, you can install this on a workstation and use remoting to remote all the commands to a XenApp 6 server, but it is very messy and doesn’t always work from my experience.  Anyway, during the setup of the SDK, you will be asked to set the PowerShell execution policy to AllSigned.  It is a good idea to leave this box checked to prevent malicious PowerShell scripts from ruining your day.

XA6 SDK Execution Policy

Adding the Snapins to your Runspace

After installation is complete, the assemblies will be loaded into the GAC (Global Assembly Cache).  Every time you want to use the Citrix XenApp cmdlets, you will need to add the snapins to your PowerShell runspace.  This can be done by launching PowerShell and using the Add-PSSnapin command as seen below:

Citrix PSSnapin

Adding the snapins will allow you to execute all the XenApp cmdlets.  Alternatively,  you can launch PowerShell from the Citrix/XenApp Server SDK folder in the  start menu as seen below.  This will launch a PowerShell runspace with all the Citrix snapins loaded and ready to go. 

XenApp PoSH

You are now ready to start PowerShelling your Citrix environment.