Remko Weijnen's Blog (Remko's Blog)

About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like

Archive for the ‘Citrix’ Category

Default Explorer View

As you probably know there are several different Folder Views in Windows Explorer:


The Explorer keeps tracks of the last used View per Folder in the registry in the key HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags. This KB article sort of desribes this functionality.


I usually change the text below the “This Computer” icon to reflect the current username and servername:


This is an ancient trick, just set the the LocalizedString Value of the following key:


It get’s a little more complicated if you want to set this from a script, because the environment variables are replaced with the actual value BEFORE they are entered in the Registry.


from CTX127541:

A cross-site scripting vulnerability has been identified in specific versions of Citrix Web Interface.

This vulnerability could potentially be used to execute malicious client-side script in the same context as legitimate content from the web server; if this vulnerability is used to execute script in the browser of an authenticated user then the script may be able to gain access to the authenticated user’s session or other potentially sensitive information.

This vulnerability affects all version 5.x Citrix Web Interface installations up to and including version 5.3.

So you should consider upgrading to version 5.4 which has a new look (again):

  • Filed under: Citrix
  • Citrix Web Interface starts very slowly

    I remembered from a previous project that when the Citrix Web Interface this is caused by a setting called generatePublisherEvidence in the Aspnet.config file.

    This behaviour has been documented by Citrix in CTX117273.

    If you read it carefully you will see the note that you need to fix it in 2 places for an x64 system.

    If you know me a little than you have probably guessed I wanted to fix this with a nice script. I have chooses PowerShell this time because it has good support for XML and I made a one-liner so I can easily use it in an Embedded Altiris script.

    The script changes the config file for both x86 and x64:

    EDIT: If you run by commandline you need to care of quotes within quotes, easiest thing to do is to use double quotes (“) to surround the commandline and use single quotes (‘) for Strings inside the commandline:

    Citrix and Java JRE Versions

    If you have ever installed Citrix Presentation Server/XenApp or one of the management consoles then you have probably dealt with Java versions.

    Citrix is very picky about the Java version so it’s usually best to initially install the Jre version that is delivered with the product.

    In my case however I needed to install the CMC for Xenapp 5 on Windows 2003, it requires JRE 5.0 Update 9 but this version was undesirable.

    So I tried to install the CMC with the current JRE version (1.6.0_22 at this time) but it makes the Installer exit immediately:



    When installing the Citrix Delivery Services Console with an unattended install (using CtxInstall.exe) the Citrix Password Manager gets automatically installed as well.

    You can see this in the Console where you will get an additional node called “Single Sign On”.

    I couldn’t find any information on how to make CtxInstall exclude it so I was left with 2 options:


    1. Unregistering the .net assembly for the Single Sign On Node.
    2. Unattended Uninstall of the Password Manager.

    I went for option 2 since 1 might mean it comes back after an update, the commandline is:


    msiexec /x {25F2D5CD-B428-4869-B32B-031A9D5CE0C1} /Qb

    If it’s somehow possible to prevent installing it in the frist place, please let me know!

  • Filed under: Citrix
  • After having successfully tested the Unattended install jobs for my Citrix XenApp 5 environment I went on to testing the install.

    The install itsself and the msi logs that my jobs created all indicated that the install was successfull.

    So I went on and launched the install jop for the Delivery Services Console. This job succeeded nicely but when I opened the console the XenApp node was missing:


    The resolution is described in CTX125827 but Resolution 2 is a lot of manual labour 🙁

    So what do we do? We script it! (more…)

  • Filed under: Citrix
  • Automatically Accept Shadow Request

    When you request Shadow (Remote Control) of a Remote Desktop (Terminal Server) or Citrix session the user gets a Dialog where he can Accept or Deny the Shadow Request.

    It looks something like this:


    It’s possible to change the default settings and remove the need for this permission but I think this is a bad idea since it violates the user’s privacy.

    But sometimes it would be convenient to automatically accept, for instance for when a user is away or when you want to shadow a session that is “yours” but runs under another account.

    I wrote a tool to do just that 😀

    Detecting a Citrix Published Application

    While browsing through my old projects folder I found a little commandline tool that I wrote about a year ago. I needed to detect a certain published application on a Citrix environment in the loginscript.

    The tool detect the current Citrix published applicationname or if you are running Terminal Server aka Remote Desktop Services the Initial Program name and stores this in an environment variable (APPNAME).

    There are no parameters and there are no special dependancies (such as MFCom).

    CtxPubApp (2563 downloads)
  • Filed under: Citrix
  • Yesterday I was troubleshooting why Workspace Control was not available on an HP t5540 (Windows CE) Thin Client. This was a Citrix Xenapp 5 environment on Server 2008. When logging in through the Web Interface from the Thin Client’s browser we noticed two things: Client Detection failed and the Reconnect and Disconnect buttons were not available: NoButtons I looked into the files in the webinterface folder (wwwroot/Citrix/XenApp)and searched for workplace and reconnect. I determined that the Client Detection is done in the nativeClientDetect.js (app_data/clientDetection/clientscripts). But what I saw was very strange:


  • Filed under: Citrix
  • Blogroll