Carl Webster Accessibility Statement

Carl Webster is committed to facilitating the accessibility and usability of its website,, for everyone. Carl Webster aims to comply with all applicable standards, including the World Wide Web Consortium’s Web Content Accessibility Guidelines 2.0 up to Level AA (WCAG 2.0 AA). Carl Webster is proud of the efforts that we have completed and that are in-progress to ensure that our website is accessible to everyone.

If you experience any difficulty in accessing any part of this website, please feel free to email us at and we will work with you to provide the information or service you seek through an alternate communication method that is accessible for you consistent with applicable law (for example, through telephone support).

  • XenApp 5 for Windows Server 2008 Documentation Script Version 4.2 Released

    A feature that has been requested in all the XenApp documentation scripts for a good while is the ability to print a specific section of the report. This feature, a couple of bug fixes and several enhancements to speed up script execution are what make up Version 4.2.

    Note: This is the last version of this script. Other than bug fixes, there will be no more enhancements or updates to this script.

    The list of changes in Version 4.2:

    • Fix the SWExclusions function to work if SoftwareExclusions.txt file contains only one item
    • Cleanup the script’s parameters section
    • Code cleanup and standardization with the master template script
    • Requires PowerShell V3 or later
    • Removed support for Word 2007
    • Word 2007 references in help text removed
    • Cover page parameter now states only Word 2010 and 2013 are supported
    • Most Word 2007 references in script removed:
      • Function ValidateCoverPage
      • Function SetupWord
      • Function SaveandCloseDocumentandShutdownWord
    • Function CheckWord2007SaveAsPDFInstalled removed
    • If Word 2007 is detected, an error message is now given and the script is aborted
    • Cleanup Word table code for the first row and background color
    • Cleanup retrieving services and service startup type with Iain Brighton’s optimization
    • Add Iain Brighton’s Word table functions
    • Move Citrix Services table to new table functions
    • Move hardware info to new table functions
    • Move Citrix and Microsoft hotfix tables to new table functions
    • Move Appendix A and B tables to new table function
    • Add more write statements and error handling to the Configuration Logging report section
    • Added beginning and ending dates for retrieving Configuration Logging data
    • Add Section parameter
    • Valid Section options are:
      • Admins (Administrators)
      • Apps (Applications)
      • ConfigLog (Configuration Logging)
      • Farm
      • LoadEvals (Load Evaluators)
      • Policies
      • Printers (Print Drivers and Print Driver Mappings)
      • Servers
      • Zones
      • All

    Sam Jacobs found a bug in the SWExclusions function. If the SoftwareExclusions.txt file contained a single entry, the function did not work. This is now fixed.

    For all the other scripts, I have added new output parameters. The parameters section was getting very ugly looking and over complicated. Turns out I was making that section much more difficult than it needed to be. After simplifying the code, the help text for the parameters, to me, looks much better. Even though this script will not get formatted text or HTML output options, the cleaner parameters section was needed.

    F:\XA52008_Inventory_V42.ps1 [-MSWord] [-Hardware] [-Software] [-StartDate <DateTime>] [-EndDate <DateTime>]
    [-Summary] [-AddDateTime] [-Section <String>] [-CompanyName <String>] [-CoverPage <String>] [-UserName <String>]
    F:\XA52008_Inventory_V42.ps1 [-PDF] [-Hardware] [-Software] [-StartDate <DateTime>] [-EndDate <DateTime>]
    [-Summary] [-AddDateTime] [-Section <String>] [-CompanyName <String>] [-CoverPage <String>] [-UserName <String>]

    I was already deep into converting all my old tables to Iain’s new Word table functions before I made the decision to stop updating this script. This script contains code from the master template script and therefore requires PowerShell version 3 or later. Also, Word 2007 is no longer supported.

    This script contains the code for Iain’s new table functions and several tables had already been converted:

    • Citrix Services
    • Hardware Information
    • Citrix Hotfixes
    • Microsoft Hotfixes
    • Appendix A
    • Appendix B

    When I was creating the DHCP and Active Directory scripts, I found out the code I was using for the header row in a Word table was too verbose. I learned how to reduce the lines of code needed to set the header row and give it a background color and make the text bold.

    I am working with a group of very talented and hard-working friends to create a master template script. One of my new EMEA friends, Iain Brighton, showed me a more efficient way to get the list of services that included the startup mode. My original method required two WMI calls. Iain gets it done in one line resulting in less code and much faster execution time.

    When using the new -Section parameter, the report will contain only data for the section you specify. If you need to report on Applications, that is the only data that will be in the report.

    Since this script will no longer be updated, I am moving it to the Archive section of the downloads page.

    You can always find this script in the Archive section by going to



    About Carl Webster

    Webster is a Sr. Solutions Architect for Choice Solutions, LLC and specializes in Citrix, Active Directory and Technical Documentation. Webster has been working with Citrix products for many years starting with Multi-User OS/2 in 1990.

    View all posts by Carl Webster

    9 Responses to “XenApp 5 for Windows Server 2008 Documentation Script Version 4.2 Released”

    1. Randy Knight Says:

      Still no luck with this problem, but I did have one question about your script. Would it be possible to edit the script for my environment and hard code the Get-XAFarm results?

      Again I’m not an expert at PowerShell (VBScript on the other hand…), so I don’t want to jump down that rabbit hole if I’m wasting my time, but I’m willing to try if it’s reasonably feasible.

      Either way, again, thanks for your assistance.


    2. Randy Knight Says:

      I understand, I was hoping it was something simple I’d overlooked or didn’t know due to my lack of experience with XenApp 5 and PowerShell.

      I’ll check out the link and update if I find a solution.

      Thanks for the effort.


    3. Randy Knight Says:

      Hi Carl, I’m trying to use this script, but it is failing at the “Get-XAFarm” commandlet. Unfortunately I am neither a XenApp expert or a PowerShell expert and finding that aside from your site there is very little information about using PowerShell with XenApp 5 (Thanks BTW).

      Your documentation script fails with the same error I get when I run Get-XAFarm from the PS prompt:

      PS H:\> get-xafarm
      get-xafarm : Service not available
      At line:1 char:1
      + get-xafarm
      + ~~~~~~~~~~
      + CategoryInfo : NotSpecified: (:) [Get-XAFarm], IMAException
      + FullyQualifiedErrorId : Citrix.IMA.IMAException,Citrix.XenApp.Commands.GetFarmCmdlet

      I downloaded and installed XenApp Commands (CTP4) from your DB link as well as PS3. I also used this method to verify the correct PS version:

      PS H:\> $PSVersionTable.PSVersion

      Major Minor Build Revision
      —– —– —– ——–
      3 0 -1 -1

      I am however able to run other XA comandlets such as Get-XAZone and Get-XAServer successfully.

      I am not using Configuration Logging. Any thoughts on what I may have done wrong?


      • Carl Webster Says:

        Is the account you are using a full farm admin?



        • Randy Knight Says:

          PS H:\> Get-XAAdministrator

          AdministratorName : [My Domain]\[My Account]
          AdministratorType : Full
          Enabled : True
          EmailAddress :
          SmsNumber :
          SmsGateway :
          FarmPrivileges :
          FolderPrivileges :

          I am also a Domain Admin in the domain and a Local Admin on all of the servers in the farm.

          If it matters I have 4 farms, and all have the same issue.

          When I downloaded CTP4, I assumed it superseded CTP3, so I did not install CTP3. Was I correct?

          Thanks for your prompt reply.


    Leave a Reply