Archive for the ‘Citrix XenApp’ Category

Dual Monitor Shadowing in XenApp 6

May 17, 2011 8 comments


***NOTE – you may need to reference Remote Assistance Settings not Sticking for Dual Monitor Shadowing in XenApp 6 in addition if you have issues with the settings sticking***

We have XA6 deployed and ran into that not so fun issue where shadowing does not work when either the “shadower” or “shadowee” have dual monitors. One option around this is to fork up some cash and buy a tool like GoToAssist.

Or for free you could use Microsoft Remote Assistance. This option worked really well for us because we are a ConfigMgr shop and the client helped us fast-track the workaround. With some suggestions and help from the Lead Sales Engineer from Citrix we did the following.

***NOTE*** I have not determined how to use group policy for the DCOM permissions yet.

***NOTE*** You will want to be careful when/if you modify the “Remote Tools Client Agent” security tab as this will reconfigure DCOM as it relates to RAServer – thus the need for policy or something to enforce these settings.

Configure Remote Assistance & DCOM:

  1. Install Remote Assistance in the Windows Server 2008 R2 OS (not installed by default)
  2. Run “dcomcnfg”
  3. Expand “Component Services – Computers – My Computer – DCOM Config”
  4. Navigate to “RAServer”, right click it, and select “Properties”
  5. Click on the “Security” tab
  6. Click on “Edit” under “Launch and Activate Permissions”
  7. Add the “ConfigMgr Remote Control Users” local group and grant “Local Launch”, “Remote Launch”, “Local Activation”, and “Remote Activation”
  8. Click on “Edit” under “Access Permissions”
  9. Add the “ConfigMgr Remote Control Users” local group and grant “Local Access” and “Remote Access”
  10. . Click on “Edit” under “Configuration Permissions”
  11.   Add the “ConfigMgr Remote Control Users” local group and grant “Full Control”

There are a few ways that you can initiate the Remote Assistance session. Each of these require that you get the server that the user is connected to. The best way is to have them open “Citrix Connection Center” and get the name of the XA6 server they are connected to.


Below are some of the options to start Remote Assistance:

  1. From a local device run “msra /offerra”
  2. From the ConfigMgr console you can right click on the device, select “Start” and then click on “Remote Assistance”
  3. You can take the command “msra /offerra” and create a Citrix XA6 published application
  4. You can use something like

Once Remote Assistance is started:

  1. you can put the server name into the name field and click “Next”. The following
  2. You can use the pull down menu to select the user and their session

Alternative Solution Reference Link:

ConfigMgr OSD TS commands not working with Windows Server 2008 R2

May 4, 2011 6 comments

I ran into some inconsistency with commands working with my ConfigMgr task sequence when deploying Windows Server 2008 R2. I am creating a build for Citrix XA6. When I ran certain commands via the TS to do this in Windows Server 2008 R2 it did not work. In the full OS it worked just fine. So my good friend Chris Nackers gave me a couple of ideas. Basically Chris said to dig into what is being called, where it resides, and force the TS to work that way.

One of the applications that we need installed (HP Quality Center) requires that DEP is turned off.

The command I need to run is: bcdedit.exe /set {current} nx AlwaysOf
In the TS I need to run: cmd.exe /c "bcdedit.exe /set {current} nx AlwaysOff"

The next trick was to “Disable 64-bit file system redirection”. So, BCDEDIT.EXE is in C:\Windows\System32 in Windows Server 2008 R2 and it seems that when I combine the command in the TS and that checkbox things work. I also added “C:\Windows\System32” as the “Start in:” folder but I am not certain that this is necessary.


The Citrix XenApp install also had some issues using the following command prompt required a temporary disabling of driver integrity check. If you do not specify this it will give you a security warning and say that an unsigned driver is trying to install. So without this it will not install silently.

Installation: XenAppSetupConsole.exe /log:c:\XA6_Install.log /install:XenApp /Platinum
Command I had to run first: bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
How I need to use in the TS: cmd.exe /c "bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS"


Likewise I enabled the driver integrity check when done by using:

cmd.exe /c "bcdedit -deletevalue loadoptions"


ConfigMgr OSD & Citrix XenApp 6 Updates

So we have been working on automating Citrix XA6 server builds using ConfigMgr OSD. One of the challenges we had to overcome were the Citrix XA6 updates. For the most part they can install just fine with a “/qb /norestart”…but then there are XA600W2K8R2X64010 and XA600W2K8R2X64026.

Both of these updates require some applications to be stopped. While you can pass commands to kill the process or write a script to handle this you will still run into problems with XA600W2K8R2X64010. This update in particular caused me some headache. I wrote a script that killed all of the services that it was prompting me about. Then it said that Terminal Services needed to be installed for the update to apply…but wait…that was one of the processes I had to kill to get rid of the message. So, I removed that step in my script to leave Terminal Services running since it seemed to need it…then it prompted saying that it needed to the process/application to be closed. Sort of like a dog chasing it’s tail, huh?

Then I stumbled upon the following command line syntax. This works with all of the .msp files and in such a way that it will not care what is running or require any intervention. So no script required and I just created a package with the updates and associated programs.

msiexec /qb /passive /norestart /p filename.msp

This worked for sure with the following:


%d bloggers like this: