<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Carl Webster</title>
	<atom:link href="http://carlwebster.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://carlwebster.com</link>
	<description>The Accidental Citrix Admin - The site for those who find themselves supporting Citrix involuntarily or accidentally</description>
	<lastBuildDate>Thu, 09 Feb 2012 18:29:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Web Site Statistics through December 31, 2011</title>
		<link>http://carlwebster.com/web-site-statistics-through-december-31-2011/</link>
		<comments>http://carlwebster.com/web-site-statistics-through-december-31-2011/#comments</comments>
		<pubDate>Sun, 01 Jan 2012 14:00:25 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=4721</guid>
		<description><![CDATA[<p>This short article is to show the Top 20 Articles, Top 20 Countries, Top 10 Referral sites and various web site statistics.</p><p>You just finished reading <a href="http://carlwebster.com/web-site-statistics-through-december-31-2011/">Web Site Statistics through December 31, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>Web Site Stats through December 31, 2011</p>
<p><strong>Top 20 Articles</strong> (Original CarlWebster.com, dabcc.com/Webster and the new CarlWebster.com combined):</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="bottom" nowrap="nowrap">Article Name</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">Total Views</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 7 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">51177</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 4 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">47747</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 5 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">45367</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 7 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">44148</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Integrating WI 4.6, CSG 3.1 &amp; a GoDaddy Wildcard SSL Cert on a Single Server Part 1 of 3</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">43147</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Integrating WI 4.6, CSG 3.1 &amp; a GoDaddy Wildcard SSL Cert on a Single Server Part 2 of 3</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">32587</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 4 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">31647</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 1 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">29541</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning How To Install Adobe Acrobat Reader 9.0 on Citrix XenApp 5</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">29117</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 3 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">28862</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 2 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">28636</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2008 6 of 7</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">27101</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 2 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">23814</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 1 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">23030</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 6 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">22908</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 5 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">21534</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp 5 for Windows Server 2003 (Part 3 of 7)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">20297</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning to Add a New Citrix XenApp Server to a XenApp Farm</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">18237</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning How to Migrate a Citrix Data Store from Access to SQL Server</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">18211</p>
</td>
</tr>
<tr>
<td valign="bottom" nowrap="nowrap">Learning the Basics of Citrix XenApp5 and XenServer 5.5 (Part 10 of 10)</td>
<td valign="bottom" nowrap="nowrap">
<p align="right">17993</p>
</td>
</tr>
</tbody>
</table>
<p>All 95 articles have been viewed 980,377 times.  View counts are from November 3, 2008 through December 31, 2011.</p>
<p><strong>Top 20 Countries </strong>since August 4, 2011</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" nowrap="nowrap" width="167">The United States</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Russian Federation</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">The United Kingdom</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">India</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Germany</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">France</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Australia</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">The Netherlands</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Poland</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Canada</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Ukraine</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Sweden</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Norway</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Brazil</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Spain</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Switzerland</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Belgium</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Belarus</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Finland</td>
</tr>
<tr>
<td valign="top" nowrap="nowrap" width="167">Hong Kong</td>
</tr>
</tbody>
</table>
<p>The new CarlWebster.com has been visited by 130 different countries. </p>
<p>New CarlWebster.com Stats from August 4, 2011 through December 31, 2011:</p>
<table width="339" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td nowrap="nowrap">Visitors  </td>
<td nowrap="nowrap" width="57">
<p align="right">17,661</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">  Unique visitors</td>
<td nowrap="nowrap" width="57">
<p align="right">13,957</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">  New visitors</td>
<td nowrap="nowrap" width="57">
<p align="right">10,072</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">Actions  </td>
<td nowrap="nowrap" width="57">
<p align="right">47,297</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">  Page views</td>
<td nowrap="nowrap" width="57">
<p align="right">43,458</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">  Downloads</td>
<td nowrap="nowrap" width="57">
<p align="right">1,062</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">  Outbound links</td>
<td nowrap="nowrap" width="57">
<p align="right">2,761</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">Average actions</td>
<td nowrap="nowrap" width="57">
<p align="right">2.7</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">Total time</td>
<td nowrap="nowrap" width="57">
<p align="right">98d 8h</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">Average time per visit</td>
<td nowrap="nowrap" width="57">
<p align="right">8m 1s</p>
</td>
</tr>
<tr>
<td nowrap="nowrap">Bounce rate</td>
<td nowrap="nowrap" width="57">
<p align="right">23%</p>
</td>
</tr>
</tbody>
</table>
<p><strong>Top 10 Referral Sites</strong> since August 4, 2011:</p>
<p>Rutracker.org<br />
Forum.ru-board.com<br />
Sysadmins.ru<br />
Elektroda.pl<br />
Forums.citrix.com<br />
Ask.yahoo.com<br />
Community.citrix.com<br />
Facebook.com<br />
Dabcc.com<br />
Experts-exchange.com</p>
<p>You just finished reading <a href="http://carlwebster.com/web-site-statistics-through-december-31-2011/">Web Site Statistics through December 31, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/web-site-statistics-through-december-31-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using One Citrix Web Interface Site with Multiple XenApp Farms</title>
		<link>http://carlwebster.com/using-one-citrix-web-interface-site-with-multiple-xenapp-farms-3/</link>
		<comments>http://carlwebster.com/using-one-citrix-web-interface-site-with-multiple-xenapp-farms-3/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 11:01:47 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix Secure Gateway]]></category>
		<category><![CDATA[Citrix Web Interface]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2003]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2008]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[citrix secure gateway]]></category>
		<category><![CDATA[secure ticket authority]]></category>
		<category><![CDATA[STA]]></category>
		<category><![CDATA[web interface]]></category>
		<category><![CDATA[xml broker]]></category>

		<guid isPermaLink="false">http://carlwebster.com/?p=4757</guid>
		<description><![CDATA[<p>I frequent Experts Exchange (http://www.experts-exchange.com/) and because of my status there, I often receive questions. Some of the questions have a common theme. Such as: “How do I show published applications to my users when I have multiple XenApp farms?” “How can I use Web Interface to migrate users to a new XenApp farm while [...]</p><p>You just finished reading <a href="http://carlwebster.com/using-one-citrix-web-interface-site-with-multiple-xenapp-farms-3/">Using One Citrix Web Interface Site with Multiple XenApp Farms</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>I frequent Experts Exchange (<a href="http://www.experts-exchange.com/">http://www.experts-exchange.com/</a>) and because of my status there, I often receive questions. Some of the questions have a common theme. Such as:</p>
<ul>
<li>“How do I show published applications to my users when I have multiple XenApp farms?”</li>
<li>“How can I use Web Interface to migrate users to a new XenApp farm while using both farms?”</li>
<li>“If I have the same application published in multiple farms, how can I control which farm the application is run from?”</li>
</ul>
<p>In this article, you will learn how to configure Web Interface 5.4 and Citrix Secure Gateway 3.3 for multiple XenApp farms.</p>
<p>There are several potential reasons for using multiple XenApp farms:</p>
<ul>
<li>XenApp 6.0 and XenApp 6.5 require new farms</li>
<li>Distinct farms for 32-bit applications and 64-bit applications</li>
<li>Organizational security requirements</li>
<li>Business mergers and acquisitions</li>
<li>Multiple internal environments</li>
</ul>
<p><span id="more-4757"></span>XenApp 6.x cannot be integrated into the farm of an earlier version of XenApp or Presentation Server. Similarly, XenApp 6.5 cannot be mixed with a XenApp 6.0 farm. Attempting to join a XenApp 6.x server into an earlier farm will damage the data store.</p>
<p>Deploying a 32-bit application on a 64-bit server will install the application, by default, in the C:\Program Files (x86)\ folder tree. Deploying a 32-bit application on a 32-bit server will install the application, by default, in the C:\Program Files\ directory. This means that the default application location used when publishing the application is different for 32-bit and 64-bit versions of Windows Server when installing a 32-bit application.</p>
<p>An enterprise may have applications that are required to be separated from other applications for security or business requirements. Installing the applications to XenApp servers that are in different farms can allow for segregated farm administration and more granular user access.</p>
<p>When one business merges with or acquires another business, it is possible that both businesses may have pre-existing XenApp farms. Business requirements, during the transition phase, may necessitate the need to keep the XenApp farms separate temporarily or permanently.</p>
<p>A highly structured environment with strict change management controls may require different farms for different environments. For example, an organization may have Development, Test, QA, Training and Production environments. An application may be installed into the Development farm until network and systems administration procedures are documented. Once documented, the settings for the application can be moved into the Test farm. The Test farm can then be used for user acceptance testing. Once user testing has been completed, the settings for the application can be moved into the next farm. And so on, until the application is put into the production farm.</p>
<p>For this article, the following Virtual Machines (VMs) will be used:</p>
<ul>
<li>Domain Controller: TrainingDC
<ul>
<li>The VM will be assigned two virtual CPUs (vCPUs), 2GB of RAM and 24GB of Hard Drive space</li>
<li>Windows Server 2008 R2 SP1</li>
<li>Domain Controller for the WebstersLab.com Active Directory domain</li>
<li>Remote Desktop Services License server and Citrix Licensing server</li>
<li>Static IP Address 192.168.1.100</li>
</ul>
</li>
<li>SQL Server: TrainingSQL
<ul>
<li>The VM will be assigned two vCPUs, 2GB of RAM and 24GB of Hard Drive space</li>
<li>Hosts the SQL Server data stores for all four XenApp farms</li>
<li>Microsoft SQL Server 2008 R2 SP1 on Windows Server 2008 R2 SP1</li>
<li>Static IP Address 192.168.1.101</li>
</ul>
</li>
<li>XenApp 5 #1: XA520031
<ul>
<li>The VM will be assigned two vCPUs, 4GB of RAM and 32GB of Hard Drive space</li>
<li>XenApp 5 for Server 2003 Hotfix Rollup Pack 7 on Windows Server 2003 SP2 32-bit</li>
<li>Static IP Address 192.168.1.102</li>
<li>Default XML port of 80</li>
<li>Farm name XA52003</li>
</ul>
</li>
<li>XenApp 5 #3: XA520081
<ul>
<li>The VM will be assigned two vCPUs, 4GB of RAM and 32GB of Hard Drive space</li>
<li>XenApp 5 for Server 2008 Hotfix Rollup Pack 1 on Windows Server 2008 SP2 32-bit</li>
<li>Static IP Address 192.168.1.104</li>
<li>Default XML port of 80</li>
<li>Farm name XA52008</li>
</ul>
</li>
<li>Web Interface and Citrix Secure Gateway: CitrixWI
<ul>
<li>The VM will be assigned two vCPUs, 2GB of RAM and 24GB of Hard Drive space</li>
<li>Windows Server 2003 SP2 32-bit</li>
<li>Web Interface 5.4 with Hotfix WI540MSI002 and Citrix Secure Gateway 3.3</li>
<li>Not a member of the WebstersLab.com domain</li>
<li>Static IP Address 192.168.1.105</li>
</ul>
</li>
<li>XenApp 6.0: XENAPP60
<ul>
<li>The VM will be assigned two vCPUs, 4GB of RAM and 40GB of Hard Drive space</li>
<li>XenApp 6.0 Hotfix Rollup Pack 1 on Windows Server 2008 R2 SP1</li>
<li>Static IP Address 192.168.1.106</li>
<li>XML port 8060</li>
<li>Farm name XA60Farm</li>
</ul>
</li>
<li>XenApp 6.5: XENAPP65
<ul>
<li>The VM will be assigned two vCPUs, 4GB of RAM and 40GB of Hard Drive space</li>
<li>XenApp 6.5 on Windows Server 2008 R2 SP1</li>
<li>Static IP Address 192.168.1.107</li>
<li>XML port 8065</li>
<li>Farm name XA65Farm</li>
</ul>
</li>
</ul>
<p>In addition to the Administrator account, five accounts were created in the WebstersLab.com domain:</p>
<ul>
<li>User03, who has access to only the XA52003 farm</li>
<li>User08, who has access to only the XA52008 farm</li>
<li>User60, who has access to only the XA60Farm farm</li>
<li>User65, who has access to only the XA65Farm farm</li>
<li>UserAll, who has access to all four farms</li>
</ul>
<p>Each farm has two resources published.</p>
<ul>
<li>XA52003
<ul>
<li>Notepad</li>
<li>Word 2010</li>
</ul>
</li>
<li>XA52008
<ul>
<li>Paint</li>
<li>Word 2010</li>
</ul>
</li>
<li>XA60Farm
<ul>
<li>Calculator</li>
<li>Word 2010</li>
</ul>
</li>
<li>XA65Farm
<ul>
<li>WordPad</li>
<li>Word 2010</li>
</ul>
</li>
</ul>
<p>You just finished reading <a href="http://carlwebster.com/using-one-citrix-web-interface-site-with-multiple-xenapp-farms-3/">Using One Citrix Web Interface Site with Multiple XenApp Farms</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/using-one-citrix-web-interface-site-with-multiple-xenapp-farms-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server</title>
		<link>http://carlwebster.com/learning-to-migrate-a-citrix-xenapp-6-x-data-store-from-sql-server-express-to-sql-server/</link>
		<comments>http://carlwebster.com/learning-to-migrate-a-citrix-xenapp-6-x-data-store-from-sql-server-express-to-sql-server/#comments</comments>
		<pubDate>Thu, 03 Nov 2011 10:00:35 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[dsmaint]]></category>
		<category><![CDATA[dsmaint backup]]></category>
		<category><![CDATA[dsmaint config]]></category>
		<category><![CDATA[dsmaint migrate]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=4010</guid>
		<description><![CDATA[<p>When a Citrix XenApp 6.x Farm is created, by default, the data store is created on the first server of the Farm using an SQL Server Express database.  This article will teach you how to: Backup an SQL Server Express data store, Create a new File DSN for a SQL Server data store, Migrate to the [...]</p><p>You just finished reading <a href="http://carlwebster.com/learning-to-migrate-a-citrix-xenapp-6-x-data-store-from-sql-server-express-to-sql-server/">Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>When a Citrix XenApp 6.x Farm is created, by default, the data store is created on the first server of the Farm using an SQL Server Express database.  This article will teach you how to:</p>
<ul>
<li>Backup an SQL Server Express data store,</li>
<li>Create a new File DSN for a SQL Server data store,</li>
<li>Migrate to the new data store,</li>
<li>Configure all XenApp servers to communicate with the new data store,</li>
<li>Stop and restart the IMA service on a XenApp server, and</li>
<li>Using AppCenter, verify communication with the new data store.</li>
</ul>
<p><span id="more-4010"></span>There are a couple of advantages to using SQL Server Express for the data store:</p>
<ul>
<li>Easy to setup during the XenApp 6.x installation.</li>
<li>No complicated ODBC DSN file to create or configure.</li>
</ul>
<p>The disadvantages to using SQL Server Express for the data store:</p>
<ul>
<li>If the XenApp server hosting the data store goes down or is restarted, Farm functionality is severely crippled.</li>
<li>Only recommended for small Farms because of performance reasons.</li>
<li>No High Availability options.</li>
<li>Rarely included in backup or disaster recovery planning.</li>
</ul>
<p>The advantages to using SQL Server for the data store:</p>
<ul>
<li>Is not run on a XenApp server.</li>
<li>Can be used for any size Farm.</li>
<li>High Availability options.</li>
<li>Usually included in backup and disaster recovery planning.</li>
</ul>
<p>For this article, XenServer 6 will be used with Windows Server 2008 R2 Standard and Citrix XenApp 6.5 Platinum.  The following Virtual Machines (VM) will be used:</p>
<p>SQL Server: SQL</p>
<ul>
<li>The VM will be assigned two processors, 2GB of RAM and 24GB of Hard Drive space</li>
<li>This VM will host the migrated SQL Server data store</li>
<li>This VM will use SQL Server 2008 R2</li>
<li>Static IP Address 192.168.1.150</li>
</ul>
<p>XenApp 6.5 #1: XENAPP65-1</p>
<ul>
<li>The VM will be assigned two processors, 4GB of RAM and 24GB of Hard Drive space</li>
<li>This VM will host the original SQL Server Express data store</li>
<li>Static IP Address 192.168.1.153</li>
</ul>
<p>XenApp 6.5 #2: XENAPP65-2</p>
<ul>
<li>The VM will be assigned two processors, 4GB of RAM and 24GB of Hard Drive space</li>
<li>This VM is used to show how to change additional XenApp servers to use the new SQL Server data store</li>
<li>Static IP Address 192.168.1.154</li>
</ul>
<p>XENAPP65-1 has a folder named <em>CTXBACKUP </em>that will be used to store the data store backup.  XenApp 6.5 was installed on XENAPP65 and a new XenApp Farm named <em>Webster</em> was created during the installation.  After restarting the VM, XenApp 6.5 was installed on XENAPP65-2 and joined to the <em>Webster</em> Farm.  XenApp 6.5 has a new configuration option.  A XenApp 6.5 server can be configured to either host sessions only or host sessions and be a data collector.  Both servers are configured with the Controller and Session-host mode enabled.  Two applications were published on the Farm: Notepad and Paint (Figure 1).</p>
<div id="attachment_4011" class="wp-caption alignnone" style="width: 159px"><a href="http://carlwebster.com/files/2011/11/Figure001.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4011" src="http://carlwebster.com/files/2011/11/Figure001-149x300.png" alt=" " width="149" height="300" /></a><p class="wp-caption-text">Figure 1</p></div>
<p>Both applications are configured to run from both XenApp servers (Figure 2).</p>
<div id="attachment_4012" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure002.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4012" src="http://carlwebster.com/files/2011/11/Figure002-530x221.png" alt="" width="530" height="221" /></a><p class="wp-caption-text">Figure 2</p></div>
<p>It is a Best Practice to always backup the data store before performing the migration.  The SQL Server Express based data store, by default, is located in <em>C:\Program Files (x86)\Citrix\Independent Management Architecture </em>and is named <em>MF20.mdf</em>.</p>
<p>From a command prompt on XENAPP65-1, the following command, as shown in Figure 3, was run to generate a backup:</p>
<p><strong>dsmaint backup c:\ctxbackup</strong></p>
<div id="attachment_4013" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure003.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4013" src="http://carlwebster.com/files/2011/11/Figure003-530x100.png" alt="" width="530" height="100" /></a><p class="wp-caption-text">Figure 3</p></div>
<p>The command &#8220;dsmaint backup&#8221; makes a copy of the MF20.mdf SQL Server Express data store to the location specified.  &#8220;dsmaint backup&#8221; must be run on the XenApp 6.x server hosting the SQL Server Express data store.</p>
<p><strong>BEFORE YOU START THE MIGRATION, make sure the account being used for this procedure is a Full Farm Administrator.</strong></p>
<p><strong>Note:</strong>  If you have a Microsoft SQL Server DBA available, please reference the appropriate Citrix eDocs sections:</p>
<ul>
<li>XenApp 6.0 &#8211; <a href="http://support.citrix.com/proddocs/topic/xenapp6-w2k8-install/ps-database-ref-sql-srvr.html">http://support.citrix.com/proddocs/topic/xenapp6-w2k8-install/ps-database-ref-sql-srvr.html</a></li>
<li>XenApp 6.5 &#8211; <a href="http://support.citrix.com/proddocs/topic/xenapp65-install/ps-database-ref-sql-srvr.html">http://support.citrix.com/proddocs/topic/xenapp65-install/ps-database-ref-sql-srvr.html</a></li>
</ul>
<p>To create the SQL Server data store database, open SQL Server Management Studio.  Click <em>Start -&gt; All Programs -&gt; Microsoft SQL Server 2008 R2 -&gt; SQL Server Management Studio</em> (Figure 4).</p>
<div id="attachment_4014" class="wp-caption alignnone" style="width: 271px"><a href="http://carlwebster.com/files/2011/11/Figure004.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4014" src="http://carlwebster.com/files/2011/11/Figure004-261x300.png" alt="" width="261" height="300" /></a><p class="wp-caption-text">Figure 4</p></div>
<p>Login using the necessary credentials (Figure 5).</p>
<div id="attachment_4015" class="wp-caption alignnone" style="width: 416px"><a href="http://carlwebster.com/files/2011/11/Figure005.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4015" src="http://carlwebster.com/files/2011/11/Figure005-406x300.png" alt="" width="406" height="300" /></a><p class="wp-caption-text">Figure 5</p></div>
<p>Expand <em>Databases</em> in the left column (Figure 6).</p>
<div id="attachment_4016" class="wp-caption alignnone" style="width: 324px"><a href="http://carlwebster.com/files/2011/11/Figure006.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-full wp-image-4016" src="http://carlwebster.com/files/2011/11/Figure006.png" alt="" width="314" height="241" /></a><p class="wp-caption-text">Figure 6</p></div>
<p>Right-click <em>Databases </em>and select <em>New Database</em> (Figure 7).</p>
<div id="attachment_4017" class="wp-caption alignnone" style="width: 284px"><a href="http://carlwebster.com/files/2011/11/Figure007.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4017" src="http://carlwebster.com/files/2011/11/Figure007-274x300.png" alt="" width="274" height="300" /></a><p class="wp-caption-text">Figure 7</p></div>
<p>You may want to consider putting the XenApp Farm name in the database name as shown in Figure 8.</p>
<div id="attachment_4018" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure008.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4018" src="http://carlwebster.com/files/2011/11/Figure008-530x177.png" alt="" width="530" height="177" /></a><p class="wp-caption-text">Figure 8</p></div>
<p>Click <em>OK</em> and the new data store database is ready for use as shown in Figure 9.</p>
<div id="attachment_4019" class="wp-caption alignnone" style="width: 266px"><a href="http://carlwebster.com/files/2011/11/Figure009.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4019" src="http://carlwebster.com/files/2011/11/Figure009-256x300.png" alt="" width="256" height="300" /></a><p class="wp-caption-text">Figure 9</p></div>
<p>On the XenApp server hosting the SQL Server Express data store, a new Data Source Name (DSN) needs to be created for the SQL database.</p>
<p>Click <em>Start </em>-&gt; <em>Administrative Tools</em> -&gt; <em>Data Sources (ODBC)</em> (Figure 10).</p>
<div id="attachment_4020" class="wp-caption alignnone" style="width: 329px"><a href="http://carlwebster.com/files/2011/11/Figure010.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4020" src="http://carlwebster.com/files/2011/11/Figure010-319x300.png" alt="" width="319" height="300" /></a><p class="wp-caption-text">Figure 10</p></div>
<p><strong>Note: </strong>What is ODBC?  This is taken from <a href="http://support.microsoft.com/kb/110093">http://support.microsoft.com/kb/110093</a></p>
<p>&#8220;Open Database Connectivity (ODBC) is Microsoft&#8217;s strategic interface for accessing data in a heterogeneous environment of relational and non- relational database management systems. Based on the Call Level Interface specification of the SQL Access Group, ODBC provides an open, vendor- neutral way of accessing data stored in a variety of proprietary personal computer, minicomputer, and mainframe databases.</p>
<p>ODBC alleviates the need for independent software vendors and corporate developers to learn multiple application programming interfaces. ODBC now provides a universal data access interface. With ODBC, application developers can allow an application to concurrently access, view, and modify data from multiple, diverse databases.&#8221;</p>
<p>Click the <em>File DSN</em> Tab (Figure 11).</p>
<p><strong>Note:</strong>  What is the difference between &#8220;User DSN&#8221;, &#8220;System DSN&#8221; and &#8220;File DSN&#8221;?  This is taken from  h<a href="http://support.microsoft.com/kb/213772">ttp://support.microsoft.com/kb/213772</a>.</p>
<p><strong>User DSN</strong>: The User DSN is a data source that is user-specific. A User DSN is stored locally but is available only to the user who creates it.</p>
<p><strong>System DSN</strong>: Unlike a User DSN, a System DSN is not user-specific. A System DSN is stored locally and is not dedicated to a particular user. Any user who logs on to a computer that has permission to access the data source can use a System DSN. Some programs, such as Microsoft SQL Server or Microsoft Internet Information Server (IIS), require a System DSN.  This DSN must be created on the server where the program is located. System DSNs are stored in the Windows registry under the following key: HKEY_LOCAL_MACHINE\Software\Odbc\Odbc.ini\Odbc Data sources</p>
<p><strong>File DSN</strong>: The File DSN is created locally and can be shared with other users. The File DSN is file-based, which means that the .dsn file contains all the information required to connect to the data source. Note that you must install the ODBC driver locally to use a File DSN.  File DSNs are not stored in the Windows registry. The .dsn file is a text file that you can view in any text editor, such as Microsoft Notepad.</p>
<div id="attachment_4021" class="wp-caption alignnone" style="width: 376px"><a href="http://carlwebster.com/files/2011/11/Figure011.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4021" src="http://carlwebster.com/files/2011/11/Figure011-366x300.png" alt="" width="366" height="300" /></a><p class="wp-caption-text">Figure 11</p></div>
<p>Change the <em>Look in</em> to <em>C:\Program Files (x86)\Citrix\Independent Management Architecture</em> as shown in Figure 12.  The new DSN must be placed in this folder.  The <em>IMASERVICE </em>service is programmed to look in only this folder.</p>
<div id="attachment_4022" class="wp-caption alignnone" style="width: 378px"><a href="http://carlwebster.com/files/2011/11/Figure012.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4022" src="http://carlwebster.com/files/2011/11/Figure012-368x300.png" alt="" width="368" height="300" /></a><p class="wp-caption-text">Figure 12</p></div>
<p>Click the <em>Add</em> button (Figure 13).</p>
<div id="attachment_4023" class="wp-caption alignnone" style="width: 376px"><a href="http://carlwebster.com/files/2011/11/Figure013.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4023" src="http://carlwebster.com/files/2011/11/Figure013-366x300.png" alt="" width="366" height="300" /></a><p class="wp-caption-text">Figure 13</p></div>
<p>Click on <em>SQL Server </em>and click <em>Next</em> (Figure 14).</p>
<div id="attachment_4024" class="wp-caption alignnone" style="width: 416px"><a href="http://carlwebster.com/files/2011/11/Figure014.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4024" src="http://carlwebster.com/files/2011/11/Figure014-406x300.png" alt="" width="406" height="300" /></a><p class="wp-caption-text">Figure 14</p></div>
<p>Type in <strong>C:\Program Files (x86)\Citrix\Independent Management Architecture\WebsterFarmSQLDS.dsn</strong> and click <em>Next</em> (Figure 15).</p>
<p><strong>Note:</strong> The DSN can be named anything as long as it has a .dsn file extension.  It does not need to contain &#8220;MF20&#8243; anywhere in the name.</p>
<div id="attachment_4025" class="wp-caption alignnone" style="width: 416px"><a href="http://carlwebster.com/files/2011/11/Figure015.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4025" src="http://carlwebster.com/files/2011/11/Figure015-406x300.png" alt="" width="406" height="300" /></a><p class="wp-caption-text">Figure 15</p></div>
<p>Click <em>Finish</em> (Figure 16).</p>
<div id="attachment_4026" class="wp-caption alignnone" style="width: 416px"><a href="http://carlwebster.com/files/2011/11/Figure016.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4026" src="http://carlwebster.com/files/2011/11/Figure016-406x300.png" alt="" width="406" height="300" /></a><p class="wp-caption-text">Figure 16</p></div>
<p>Enter a <em>Description</em>, type in the name of the SQL Server and click <em>Next</em>.</p>
<div id="attachment_4027" class="wp-caption alignnone" style="width: 440px"><a href="http://carlwebster.com/files/2011/11/Figure017.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4027" src="http://carlwebster.com/files/2011/11/Figure017-430x300.png" alt="" width="430" height="300" /></a><p class="wp-caption-text">Figure 17</p></div>
<p>If a successful connection to the SQL Server is made click <em>Next</em> (Figure 18).  A common problem is the Windows Firewall is not configured to allow SQL traffic (TCP Port 1433).  To configure an instance of SQL Server 2008 R2 to use a static port, follow the steps described in the &#8220;How to: Configure a Server to Listen on a Specific TCP Port (SQL Server Configuration Manager)&#8221; topic located at <a href="http://msdn.microsoft.com/en-us/library/ms177440.aspx">http://msdn.microsoft.com/en-us/library/ms177440.aspx</a>.</p>
<div id="attachment_4028" class="wp-caption alignnone" style="width: 440px"><a href="http://carlwebster.com/files/2011/11/Figure018.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4028" src="http://carlwebster.com/files/2011/11/Figure018-430x300.png" alt="" width="430" height="300" /></a><p class="wp-caption-text">Figure 18</p></div>
<p><strong>Note:</strong>  If SQL Server is set to use a static port, click <em>Client Configuration</em>, then uncheck <em>Dynamically determine port</em> and enter the value for the static port number (Figure 19).</p>
<div id="attachment_4029" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure019.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4029" src="http://carlwebster.com/files/2011/11/Figure019-530x273.png" alt="" width="530" height="273" /></a><p class="wp-caption-text">Figure 19</p></div>
<p>If the account listed in the grayed out <em>Login ID </em>authenticates successfully to the SQL Server, <em>Change the default database to </em>the new SQL Server data store and click <em>Next</em> (Figure 20).</p>
<p>One problem could be the <em>Login ID</em> account is not setup to access the SQL Server.</p>
<div id="attachment_4030" class="wp-caption alignnone" style="width: 440px"><a href="http://carlwebster.com/files/2011/11/Figure020.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4030" src="http://carlwebster.com/files/2011/11/Figure020-430x300.png" alt="" width="430" height="300" /></a><p class="wp-caption-text">Figure 20</p></div>
<p>Click <em>Finish</em> (Figure 21).</p>
<div id="attachment_4031" class="wp-caption alignnone" style="width: 440px"><a href="http://carlwebster.com/files/2011/11/Figure021.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4031" src="http://carlwebster.com/files/2011/11/Figure021-430x300.png" alt="" width="430" height="300" /></a><p class="wp-caption-text">Figure 21</p></div>
<p>Click <em>Test Data Source</em> (Figure 22).</p>
<div id="attachment_4032" class="wp-caption alignnone" style="width: 299px"><a href="http://carlwebster.com/files/2011/11/Figure022.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4032" src="http://carlwebster.com/files/2011/11/Figure022-289x300.png" alt="" width="289" height="300" /></a><p class="wp-caption-text">Figure 22</p></div>
<p>If the message TESTS COMPLETED SUCCESSFULLY is shown, click <em>OK</em> (Figure 23).   Otherwise, you will need to troubleshoot the ODBC connection to the SQL Server.  Information on SQL Server 2008 R2 ODBC can be at <a href="http://msdn.microsoft.com/en-us/library/ms131415.aspx">http://msdn.microsoft.com/en-us/library/ms131415.aspx</a>.</p>
<div id="attachment_4033" class="wp-caption alignnone" style="width: 301px"><a href="http://carlwebster.com/files/2011/11/Figure023.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4033" src="http://carlwebster.com/files/2011/11/Figure023-291x300.png" alt="" width="291" height="300" /></a><p class="wp-caption-text">Figure 23</p></div>
<p>Click <em>OK</em> (Figure 24).</p>
<div id="attachment_4034" class="wp-caption alignnone" style="width: 301px"><a href="http://carlwebster.com/files/2011/11/Figure024.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4034" src="http://carlwebster.com/files/2011/11/Figure024-291x300.png" alt="" width="291" height="300" /></a><p class="wp-caption-text">Figure 24</p></div>
<p>Your new DSN is created (Figure 25).   Click <em>OK</em>.</p>
<div id="attachment_4035" class="wp-caption alignnone" style="width: 374px"><a href="http://carlwebster.com/files/2011/11/Figure025.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4035" src="http://carlwebster.com/files/2011/11/Figure025-364x300.png" alt="" width="364" height="300" /></a><p class="wp-caption-text">Figure 25</p></div>
<p>Click <em>Start</em>, right-click <em>Command Prompt</em> and select <em>Run as administrator</em> (Figure 26).</p>
<div id="attachment_4036" class="wp-caption alignnone" style="width: 248px"><a href="http://carlwebster.com/files/2011/11/Figure026.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4036" src="http://carlwebster.com/files/2011/11/Figure026-238x300.png" alt="" width="238" height="300" /></a><p class="wp-caption-text">Figure 26</p></div>
<p>Type in <strong>dsmaint migrate </strong><strong>/srcdsn:&#8221;C:\Program Files (x86)\Citrix\Independent Management Architecture\MF20.dsn&#8221; /srcuser:citrix /srcpwd:citrix/dstdsn:&#8221;C:\Program Files (x86)\Citrix\Independent Management Architecture\WebsterFarmSQLDS.dsn&#8221; /dstuser:administrator /dstpwd:password </strong>and press <em>Enter</em>.</p>
<p><strong>/srcdsn </strong>is the SQL Server Express MF20.dsn that was created when the Farm was created</p>
<p><strong>/srcuser </strong>and <strong>/srcpwd</strong> are both, by default, &#8220;citrix&#8221;</p>
<p><strong>/dstdsn </strong>is the new DSN file</p>
<p><strong>/dstuser </strong>and <strong>/dstpwd</strong> are the username and password of the account that has rights to the new SQL Server data store database</p>
<p>Click <em>Yes</em> on the <em>Dsmaint</em> confirmation popup (Figure 27).</p>
<div id="attachment_4037" class="wp-caption alignnone" style="width: 417px"><a href="http://carlwebster.com/files/2011/11/Figure027.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-full wp-image-4037" src="http://carlwebster.com/files/2011/11/Figure027.png" alt="" width="407" height="178" /></a><p class="wp-caption-text">Figure 27</p></div>
<p>The migration starts as shown in Figure 28.</p>
<p>If the following error is received:</p>
<p>&#8220;Result: &#8220;an unknown error occurred while migrating the table, please verify the destination datasource is clean. [Microsoft][ODBC SQL server Driver][SQL server]violation of primary key constraint &#8216;CL&#8217;. Cannot insert duplicate key in object &#8220;keytable&#8221;. Indexes have been successfully patched.&#8221;</p>
<p>This is usually caused by the default database being set to Master.  That is a huge mistake.  Make sure the default database for the DSN file is set to the new SQL Server data store database.</p>
<div id="attachment_4038" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure028.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4038" src="http://carlwebster.com/files/2011/11/Figure028-530x261.png" alt="" width="530" height="261" /></a><p class="wp-caption-text">Figure 28</p></div>
<p>When the migration completes, answer <em>Yes</em> to the <em>Dsmaint </em>comparison popup (Figure 29).</p>
<div id="attachment_4039" class="wp-caption alignnone" style="width: 395px"><a href="http://carlwebster.com/files/2011/11/Figure029.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-full wp-image-4039" src="http://carlwebster.com/files/2011/11/Figure029.png" alt="" width="385" height="151" /></a><p class="wp-caption-text">Figure 29</p></div>
<p>The comparison runs and completes as shown in Figure 30 and Figure 31.</p>
<div id="attachment_4040" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure030.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4040" src="http://carlwebster.com/files/2011/11/Figure030-530x261.png" alt="" width="530" height="261" /></a><p class="wp-caption-text">Figure 30</p></div>
<div id="attachment_4041" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure031.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4041" src="http://carlwebster.com/files/2011/11/Figure031-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 31</p></div>
<p>Next DSMAINT CONFIG needs to be run.  The <strong>/pwd </strong>option needs to be used and according to the XenApp Administrator&#8217;s Guide:</p>
<p>&#8220;You must stop the Citrix Independent Management Architecture service before using <strong>config</strong> with the <strong>/pwd </strong>option.&#8221;</p>
<p>In the command prompt window, type <strong>net stop imaservice</strong> and press <em>Enter </em>(Figure 32).</p>
<div id="attachment_4042" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure032.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4042" src="http://carlwebster.com/files/2011/11/Figure032-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 32</p></div>
<p>Type in <strong>dsmaint config /user:websterslab\administrator /pwd:password /dsn:&#8221;C:\Program Files (x86)\Citrix\Independent Management Architecture\WebsterFarmDSMF20.dsn&#8221;</strong> and press <em>Enter</em> (Figure 33).</p>
<p><strong>/user</strong> and <strong>/pwd</strong> are the username and password of the account that has rights to the new SQL Server data store database.</p>
<div id="attachment_4043" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure033.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4043" src="http://carlwebster.com/files/2011/11/Figure033-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 33</p></div>
<p>The Local Host Cache file needs to be recreated.  Type in <strong>dsmaint recreatelhc</strong> and press <em>Enter</em> (Figure 34).</p>
<div id="attachment_4044" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure034.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4044" src="http://carlwebster.com/files/2011/11/Figure034-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 34</p></div>
<p>Type in <strong>net start imaservice</strong> and press <em>Enter</em> (Figure 35).</p>
<p>One cause of the IMASERVICE not restarting is the currently logged in account is not a Full Farm Administrator.</p>
<div id="attachment_4045" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure035.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4045" src="http://carlwebster.com/files/2011/11/Figure035-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 35</p></div>
<p>Type in <strong>CD &#8220;C:\Program Files (x86)\Citrix\Independent Management Architecture&#8221;</strong><strong> </strong>and press <em>Enter</em>.</p>
<p>Edit the new DSN file and remove the computer name on the WSID line as shown in Figure 36 and Figure 37.  The WSID line is not used.</p>
<div id="attachment_4046" class="wp-caption alignnone" style="width: 414px"><a href="http://carlwebster.com/files/2011/11/Figure036.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-full wp-image-4046" src="http://carlwebster.com/files/2011/11/Figure036.png" alt="" width="404" height="200" /></a><p class="wp-caption-text">Figure 36</p></div>
<div id="attachment_4047" class="wp-caption alignnone" style="width: 414px"><a href="http://carlwebster.com/files/2011/11/Figure037.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-full wp-image-4047" src="http://carlwebster.com/files/2011/11/Figure037.png" alt="" width="404" height="200" /></a><p class="wp-caption-text">Figure 37</p></div>
<p>Copy the new DSN file to the remaining XenApp server&#8217;s <em>C:\Program Files (x86)\Citrix\Independent Management</em> <em>Architecture</em> folder (Figure 38).</p>
<div id="attachment_4048" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure038.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4048" src="http://carlwebster.com/files/2011/11/Figure038-530x262.png" alt="" width="530" height="262" /></a><p class="wp-caption-text">Figure 38</p></div>
<p>On each remaining XenApp server, as shown in Figure 39, type in:</p>
<p><strong>net stop imaservice </strong>and press <em>Enter</em>.</p>
<p><strong>dsmaint config /user:\administrator /pwd:password /dsn:&#8221;C:\Program Files (x86)\Citrix\Independent Management Architecture\WebsterFarmSQLDS.dsn&#8221;</strong> and press <em>Enter</em>.</p>
<p><strong>dsmaint recreatelhc</strong></p>
<p><strong>net start imaservice</strong> and press <em>Enter</em>.</p>
<div id="attachment_4049" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure039.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4049" src="http://carlwebster.com/files/2011/11/Figure039-530x281.png" alt="" width="530" height="281" /></a><p class="wp-caption-text">Figure 39</p></div>
<p>On any of the XenApp servers, start <em>AppCenter</em> (Figure 40).</p>
<div id="attachment_4050" class="wp-caption alignnone" style="width: 167px"><a href="http://carlwebster.com/files/2011/11/Figure040.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4050" src="http://carlwebster.com/files/2011/11/Figure040-157x300.png" alt="" width="157" height="300" /></a><p class="wp-caption-text">Figure 40</p></div>
<p>AppCenter communicates with the data store to retrieve the Farm information.</p>
<p>If any errors are received, go to <a href="http://support.citrix.com">http://support.citrix.com</a> and search for the error number.</p>
<p>An alternate way to test connectivity to the data store is from a command prompt type in <strong>QFARM</strong> and press <em>Enter</em> (Figure 41).</p>
<div id="attachment_4051" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/11/Figure041.png" rel="lightbox[4010]" title="Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server"><img class="size-medium wp-image-4051" src="http://carlwebster.com/files/2011/11/Figure041-530x261.png" alt="" width="530" height="261" /></a><p class="wp-caption-text">Figure 41</p></div>
<p>In this article, you learned how to:</p>
<ul>
<li>Backup an SQL Server Express data store,</li>
<li>Create a new File DSN for a SQL Server data store,</li>
<li>Migrate to the new data store,</li>
<li>Configure all XenApp servers to communicate with the new data store,</li>
<li>Stop and restart the IMA service on a XenApp server, and</li>
<li>Using AppCenter, verify communication with the new data store.</li>
</ul>
<p>You just finished reading <a href="http://carlwebster.com/learning-to-migrate-a-citrix-xenapp-6-x-data-store-from-sql-server-express-to-sql-server/">Learning to Migrate a Citrix XenApp 6.x Data Store from SQL Server Express to SQL Server</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/learning-to-migrate-a-citrix-xenapp-6-x-data-store-from-sql-server-express-to-sql-server/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Three Years of Writing and Blogging</title>
		<link>http://carlwebster.com/three-years-of-writing-and-blogging/</link>
		<comments>http://carlwebster.com/three-years-of-writing-and-blogging/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 13:15:46 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=4004</guid>
		<description><![CDATA[<p>In October 2008, I went to the Citrix Summit in Orlando.  There I attended a XenApp 5 for Windows Server 2008 Hands-on lab taught by Jo Harder of Citrix.  Later during the Summit I saw Jo standing in the hallway outside the lab and got up the courage to talk to her.  I told Jo I was interested in writing [...]</p><p>You just finished reading <a href="http://carlwebster.com/three-years-of-writing-and-blogging/">Three Years of Writing and Blogging</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>In October 2008, I went to the Citrix Summit in Orlando.  There I attended a XenApp 5 for Windows Server 2008 Hands-on lab taught by Jo Harder of Citrix.  Later during the Summit I saw Jo standing in the hallway outside the lab and got up the courage to talk to her.  I told Jo I was interested in writing a series of basic &#8220;How To&#8221; articles about XenApp.  She thought it was a great idea and encouraged me to proceed.</p>
<p><span id="more-4004"></span>On November 1, 2008 I created carlwebster.com and published my first article two days later.  In January 2009, Doug Brown asked me to move my articles to his site and start writing for him exclusively.  I was floored that someone of Doug&#8217;s stature would ask an unknown to write for his famous web site.  In August, 2011 I moved back to CarlWebster.com.</p>
<p>In November 2009 I was nominated for the Citrix Technology Professional (CTP) award.  When I submitted my CTP application I had 33 articles which had been viewed a cumulative 243,526 times.  I now have 90 articles written which is an average of 2.5 articles a month since November 2008.  All my articles from both carlwebster.com and dabcc.com/Webster have been viewed 935,678 times!  That is just simply mind boggling to me.</p>
<p>The most popular articles are on XenApp 5 for Windows Server 2008 which have been viewed 247,032 times.</p>
<p>The second most popular articles are on Citrix Secure Gateway which have been viewed 118,321 times.</p>
<p>My first book has now sold 289 copies as of October 31, 2011.</p>
<p>On another note, I spend a lot of time on Experts Exchange helping people with their Citrix issues and questions.  As of November 1, 2011 I have 1,919,265 points making me #1 in the Citrix zone, have answered 1,272 questions, participated in another 703 questions and have made a total of 4,761 comments.</p>
<p>I want to make sure I continue to thank my friend Michael B. Smith (Exchange MVP) for his encouragement to get started writing and for Jo Harder not brushing me off when I met her at Summit 2008.</p>
<p>It has been a very busy three years!  Thanks to everyone who reads my articles.</p>
<p>Thanks</p>
<p>Carl Webster<br />
Consultant and Citrix Technology Professional<br />
<a href="http://www.carlwebster.com/"><span style="color: #0000ff">http://www.CarlWebster.com</span></a></p>
<p>You just finished reading <a href="http://carlwebster.com/three-years-of-writing-and-blogging/">Three Years of Writing and Blogging</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/three-years-of-writing-and-blogging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XenApp 6 and 6.5 Documentation Scripts Updated October 9, 2011</title>
		<link>http://carlwebster.com/xenapp-6-and-6-5-documentation-scripts-updated-october-9-2011/</link>
		<comments>http://carlwebster.com/xenapp-6-and-6-5-documentation-scripts-updated-october-9-2011/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 17:30:49 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[xenapp 6]]></category>
		<category><![CDATA[xenapp 6.5]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3940</guid>
		<description><![CDATA[<p>Fellow CTP Wilco van Bragt, e-mailed me and told me that in my XenApp 6.5 script the Health Monitoring &#38; Recovery (HMR) policy setting was not formatted properly. It took a little while to figure out how to work with the XML data returned by that policy setting. This also needed to be fixed in [...]</p><p>You just finished reading <a href="http://carlwebster.com/xenapp-6-and-6-5-documentation-scripts-updated-october-9-2011/">XenApp 6 and 6.5 Documentation Scripts Updated October 9, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Calibri"><span style="font-size: medium">Fellow CTP Wilco van Bragt, e-mailed me and told me that in my XenApp 6.5 script the Health Monitoring &amp; Recovery (HMR) policy setting was not formatted properly. It took a little while to figure out how to work with the XML data returned by that policy setting. This also needed to be fixed in the XenApp 6 documentation script.</span></span></p>
<p><span style="font-size: medium"><span style="font-family: Calibri">Here is what the policy setting looked like before:</span></span></p>
<pre class="brush: plain; title: ; notranslate">
Computer settings:
Server Settings\Health Monitoring and Recovery\Health monitoring - Value: Enabled
Server Settings\Health Monitoring and Recovery\Health monitoring tests - Value: &lt;HMRTests xmlns:
xsi='http://www.w3.o
rg/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' version='0'&gt;&lt;Tests&gt;&lt;Test name='Citrix IMA Serv
ice test' file='Citrix\IMATest.exe' description='This test queries the service to ensure that it is running by enumerat
ing the applications available on the server.' interval='60' threshold='5' allowRunningCustomHmrTests='true' timeout='6
0' recoveryAction='AlertOnly' /&gt;&lt;Test name='Logon Monitor Test' file='Citrix\LogonMonitor.dll' arguments='/SessionTime:
5 /SessionThreshold:50 /SampleInterval:600' description='Logon/logoff cycles are monitored to determine whether there i
s a problem with session initialization or possibly an application failure. If there are a lot of short cycles within
a short time period, a problem is assumed to exist.' interval='1' threshold='5' allowRunningCustomHmrTests='true' timeo
ut='1' recoveryAction='AlertOnly' /&gt;&lt;Test name='XML Service test' file='Citrix\RequestTicket.exe' description='This tes
t requests a ticket from the XML service running on the server and prints the ticket.' interval='60' threshold='5' allo
wRunningCustomHmrTests='true' timeout='60' recoveryAction='RemoveServerFromLoadBalancing' /&gt;&lt;Test name='Terminal Servic
es test' file='Citrix\CheckTermSrv.exe' description='This test enumerates the list of sessions running on the server an
d the session user information, such as user name.' interval='60' threshold='5' allowRunningCustomHmrTests='true' timeo
ut='30' recoveryAction='AlertOnly' /&gt;&lt;/Tests&gt;&lt;/HMRTests&gt;
</pre>
<p><span style="font-size: medium"><span style="font-family: Calibri">Here is what it looks like now:</span></span></p>
<pre class="brush: plain; title: ; notranslate">
Server Settings\Health Monitoring and Recovery\Health monitoring - Value: Enabled
Server Settings\Health Monitoring and Recovery\Health monitoring tests - Value:
	Name: Citrix IMA Service test
	File Location: Citrix\IMATest.exe
	Description: This test queries the service to ensure that it is running by enumerating the applications available on the server.
	Interval (seconds): 60
	Time-out (seconds): 60
	Threshold: 5
	Recovery action: AlertOnly

	Name: Logon Monitor Test
	File Location: Citrix\LogonMonitor.dll
	Arguments: /SessionTime:5 /SessionThreshold:50 /SampleInterval:600
	Description: Logon/logoff cycles are monitored to determine whether there is a problem with session initialization or possibly an application failure. If there are a lot of short cycles within a short time period, a problem is assumed to exist.
	Interval (seconds): 1
	Time-out (seconds): 1
	Threshold: 5
	Recovery action: AlertOnly

	Name: XML Service test
	File Location: Citrix\RequestTicket.exe
	Description: This test requests a ticket from the XML service running on the server and prints the ticket.
	Interval (seconds): 60
	Time-out (seconds): 60
	Threshold: 5
	Recovery action: RemoveServerFromLoadBalancing

	Name: Terminal Services test
	File Location: Citrix\CheckTermSrv.exe
	Description: This test enumerates the list of sessions running on the server and the session user information, such as user name.
	Interval (seconds): 60
	Time-out (seconds): 30
	Threshold: 5
	Recovery action: AlertOnly
</pre>
<p><span style="font-family: Calibri"><span style="font-size: medium">Looks a little better now. Here is the relevant PowerShell code:</span></span></p>
<pre class="brush: powershell; title: ; notranslate">
If($Setting.HealthMonitoringTests.State -ne &quot;NotConfigured&quot;)
{
	line 3 &quot;Server Settings\Health Monitoring and Recovery\Health monitoring tests - Value: &quot;
    # remove the spaces in the [ x m l ] you see below in front of $XML
    # the code format utility I am using uses that for its own use
	[x m l]$XML = $Setting.HealthMonitoringTests.Value
	ForEach($Test in $xml.hmrtests.tests.test)
	{
		line 4 &quot;Name: &quot; $test.name
		line 4 &quot;File Location: &quot; $test.file
		If($test.arguments)
		{
			line 4 &quot;Arguments: &quot; $test.arguments
		}
		line 4 &quot;Description: &quot; $test.description
		line 4 &quot;Interval (seconds): &quot; $test.interval
		line 4 &quot;Time-out (seconds): &quot; $test.timeout
		line 4 &quot;Threshold: &quot; $test.threshold
		line 4 &quot;Recovery action: &quot; $test.recoveryAction
		line 0 &quot;&quot;
	}
}
</pre>
<p>You just finished reading <a href="http://carlwebster.com/xenapp-6-and-6-5-documentation-scripts-updated-october-9-2011/">XenApp 6 and 6.5 Documentation Scripts Updated October 9, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/xenapp-6-and-6-5-documentation-scripts-updated-october-9-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XenApp 5 Documentation Script Updated October 9, 2011</title>
		<link>http://carlwebster.com/xenapp-5-documentation-script-updated-october-9-2011/</link>
		<comments>http://carlwebster.com/xenapp-5-documentation-script-updated-october-9-2011/#comments</comments>
		<pubDate>Sun, 09 Oct 2011 16:00:58 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2003]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2008]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[xenapp 5]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3923</guid>
		<description><![CDATA[<p>Fellow CTP Wilco van Bragt, e-mailed me and told me that in my XenApp 6.5 script the Health Monitoring &#38; Recovery (HMR) policy setting was not formatted properly. While looking into this issue, I found that I had not even included the HMR settings in the XenApp 5 script. In XenApp 5, the HMR settings [...]</p><p>You just finished reading <a href="http://carlwebster.com/xenapp-5-documentation-script-updated-october-9-2011/">XenApp 5 Documentation Script Updated October 9, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>Fellow CTP Wilco van Bragt, e-mailed me and told me that in my XenApp 6.5 script the Health Monitoring &amp; Recovery (HMR) policy setting was not formatted properly. While looking into this issue, I found that I had not even included the HMR settings in the XenApp 5 script. In XenApp 5, the HMR settings are part of the XenApp farm properties and in XenApp 6.x the settings are in the IMA farm policies.</p>
<p>I also noticed that I had not included the settings for CPU Utilization Management or Memory Optimization. In XenApp 5 for Windows Server 2003, both of those are just checkboxes so they are either Enabled or Disabled. In XenApp 5 for Windows Server 2008, CPU Utilization Management has three settings available:</p>
<ul>
<li>No CPU utilization management</li>
<li>Fair sharing of CPU between sessions</li>
<li>CPU sharing based on Resource Allotments</li>
</ul>
<p>XenApp 5 for Windows Server 2003 returns the same value of 255 whether the option is Enabled or Disabled! At this time, I am unable to report on what the setting is so I just report that &#8220;CPU Utilization Management: Cannot be determined for XenApp 5 on Windows Server 2003&#8243;.</p>
<p>The XenApp 5 scripts have been updated and can be found via this article:</p>
<p><a href="http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/">http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/</a></p>
<p>Here is the additional PowerShell code that goes in the Server Default section of the Farm settings:</p>
<pre class="brush: powershell; title: ; notranslate">
line 2 &quot;Memory/CPU&quot;
line 3 &quot;CPU Utilization Management: &quot; -NoNewLine
If($Farm.CpuManagementLevel.ToString() -eq &quot;255&quot;)
{
	line 0 &quot;Cannot be determined for XenApp 5 on Windows Server 2003&quot;
}
Else
{
	line 0 &quot;&quot; $Farm.CpuManagementLevel
}
line 3 &quot;Memory Optimization: &quot; $Farm.MemoryOptimizationEnabled

line 2 &quot;Health Monitoring &amp; Recovery&quot;
If($Farm.HmrEnabled)
{
	$HmrTests = Get-XAHmrTest -EA 0 | Sort-Object TestName
	If($?)
	{
		ForEach($HmrTest in $HmrTests)
		{
			line 3 &quot;Test Name: &quot; $Hmrtest.TestName
			line 3 &quot;Interval: &quot; $Hmrtest.Interval
			line 3 &quot;Threshold: &quot; $Hmrtest.Threshold
			line 3 &quot;Time-out: &quot; $Hmrtest.Timeout
			line 3 &quot;Test File Name: &quot; $Hmrtest.FilePath
			If($Hmrtest.Arguments)
			{
				line 4 &quot;Arguments: &quot; $Hmrtest.Arguments
			}
			line 3 &quot;Recovery Action: &quot; $Hmrtest.RecoveryAction
			line 3 &quot;Test Description: &quot; $Hmrtest.Description
			line 0 &quot;&quot;
		}
	}
	Else
	{
		line 3 &quot;Health Monitoring &amp; Recovery Tests could not be retrieved&quot;
	}
}
Else
{
	line 3 &quot;Health Monitoring &amp; Recovery is not enabled&quot;
}
</pre>
<p>You just finished reading <a href="http://carlwebster.com/xenapp-5-documentation-script-updated-october-9-2011/">XenApp 5 Documentation Script Updated October 9, 2011</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/xenapp-5-documentation-script-updated-october-9-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell</title>
		<link>http://carlwebster.com/documenting-a-citrix-xenapp-6-5-farm-with-microsoft-powershell/</link>
		<comments>http://carlwebster.com/documenting-a-citrix-xenapp-6-5-farm-with-microsoft-powershell/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 10:00:56 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[xenapp 6.5]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3865</guid>
		<description><![CDATA[<p>A customer site I was at recently needed their new XenApp 6.0 farm documented. I remembered reading about Citrix having some PowerShell “stuff” for XenApp 6.0 so I started searching. I came across a short article by Michael Bogobowicz Send Farm Server &#38; Application Inventory By Email &#8212; XA6 PS Script located at http://community.citrix.com/pages/viewpage.action?pageId=148703582. That [...]</p><p>You just finished reading <a href="http://carlwebster.com/documenting-a-citrix-xenapp-6-5-farm-with-microsoft-powershell/">Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Calibri;font-size: medium">A customer site I was at recently needed their new XenApp 6.0 farm documented. I remembered reading about Citrix having some PowerShell “stuff” for XenApp 6.0 so I started searching. I came across a short article by Michael Bogobowicz <em>Send Farm Server &amp; Application Inventory By Email &#8212; XA6 PS Script</em> located at </span><a href="http://community.citrix.com/pages/viewpage.action?pageId=148703582"><span style="color: #0000ff;font-family: Calibri;font-size: medium">http://community.citrix.com/pages/viewpage.action?pageId=148703582</span></a><span style="font-family: Calibri"><span style="font-size: medium">. That short article really piqued my interest. I took Michael’s little script as the starting point to learn Microsoft’s PowerShell. With some help from PowerShell MVP and fellow CTP Brandon Shell and a lot of help from Exchange MVP Michael B. Smith, I turned the original script into over 1800 lines of PowerShell to thoroughly document a XenApp 6 farm. For this article, I will update the original XenApp 6.0 documentation script for XenApp 6.5. </span></span></p>
<p><span id="more-3865"></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">This article will focus only on XenApp 6.5. There are already articles for XenApp 5 and XenApp 6.0 available on my web site.</span></span></p>
<p><span style="font-size: medium"><span style="font-family: Calibri">The prerequisites to follow along with this article are:</span></span></p>
<ul>
<li><span style="font-family: Calibri"><span style="font-size: medium">A server, physical or virtual, running Microsoft Windows Server 2008 R2 with or without SP1</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Citrix XenApp 6.5 installed</span></span></li>
</ul>
<p><span style="font-family: Calibri"><span style="font-size: medium">The nice thing about XenApp 6.5 compared to both XenApp 5 and XenApp 6 is that all the basic Citrix PowerShell stuff is installed when you install XenApp 6.5. But we still need the XenApp 6.5 PowerShell Help and the Citrix Group Policy PowerShell Commands.</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">My initial goal was to see if I could walk down the nodes in the AppCenter (Figure 1) and see if I could document every nook and cranny.</span></span></p>
<div id="attachment_3866" class="wp-caption alignnone" style="width: 166px"><a href="http://carlwebster.com/files/2011/10/Figure0011.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3866" src="http://carlwebster.com/files/2011/10/Figure0011-156x300.png" alt="" width="156" height="300" /></a><p class="wp-caption-text">Figure 1</p></div>
<p><span style="font-family: Calibri;font-size: medium">Before we can start using PowerShell to document anything in the XenApp 6.5 farm we first need to install the SDK (for the Help file) and Citrix Group Policy commands. From your XenApp 6.5 server, go to </span><a href="http://tinyurl.com/XenApp65PSSDK"><span style="color: #0000ff;font-family: Calibri;font-size: medium">http://tinyurl.com/XenApp65PSSDK</span></a><span style="font-family: Calibri"><span style="font-size: medium"> (Figure 2).</span></span></p>
<div id="attachment_3867" class="wp-caption alignnone" style="width: 410px"><a href="http://carlwebster.com/files/2011/10/Figure0021.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3867" src="http://carlwebster.com/files/2011/10/Figure0021-400x300.png" alt="" width="400" height="300" /></a><p class="wp-caption-text">Figure 2</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Scroll down and click on <em>Download XenApp 6.5 Powershell SDK &#8212; Version 6.5</em> (Figure 3). Do not exit your Internet browser at this time.</span></span></p>
<div id="attachment_3868" class="wp-caption alignnone" style="width: 410px"><a href="http://carlwebster.com/files/2011/10/Figure0031.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3868" src="http://carlwebster.com/files/2011/10/Figure0031-400x300.png" alt="" width="400" height="300" /></a><p class="wp-caption-text">Figure 3</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Extract the file to C:\XA65SDK. Click <em>Start</em>, <em>Run</em>, type in <strong>C:\XA65SDK\XASDK6.5.exe</strong> and press <em>Enter</em> (Figure 4).</span></span></p>
<div id="attachment_3869" class="wp-caption alignnone" style="width: 427px"><a href="http://carlwebster.com/files/2011/10/Figure0041.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-full wp-image-3869" src="http://carlwebster.com/files/2011/10/Figure0041.png" alt="" width="417" height="220" /></a><p class="wp-caption-text">Figure 4</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Click <em>Run</em> (Figure 5).</span></span></p>
<div id="attachment_3870" class="wp-caption alignnone" style="width: 410px"><a href="http://carlwebster.com/files/2011/10/Figure0051.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3870" src="http://carlwebster.com/files/2011/10/Figure0051-400x300.png" alt="" width="400" height="300" /></a><p class="wp-caption-text">Figure 5</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Select <em>I accept the terms of this license agreement</em> and click <em>Next</em> (Figure 6).</span></span></p>
<div id="attachment_3871" class="wp-caption alignnone" style="width: 364px"><a href="http://carlwebster.com/files/2011/10/Figure0061.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3871" src="http://carlwebster.com/files/2011/10/Figure0061-354x300.png" alt="" width="354" height="300" /></a><p class="wp-caption-text">Figure 6</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Select <em>Update the execution policy</em> <em>(to AllSigned) </em>and Click <em>Next</em> (Figure 7).</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium"><strong>Note:</strong> If you do not update the execution policy to AllSigned, the Citrix supplied XenApp PowerShell scripts will not load.</span></span></p>
<div id="attachment_3872" class="wp-caption alignnone" style="width: 364px"><a href="http://carlwebster.com/files/2011/10/Figure0071.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3872" src="http://carlwebster.com/files/2011/10/Figure0071-354x300.png" alt="" width="354" height="300" /></a><p class="wp-caption-text">Figure 7</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Click <em>Install</em> (Figure 8).</span></span></p>
<div id="attachment_3873" class="wp-caption alignnone" style="width: 364px"><a href="http://carlwebster.com/files/2011/10/Figure0081.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3873" src="http://carlwebster.com/files/2011/10/Figure0081-354x300.png" alt="" width="354" height="300" /></a><p class="wp-caption-text">Figure 8</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">After a few seconds, the installation completes. Click <em>Finish</em> (Figure 9).</span></span></p>
<div id="attachment_3874" class="wp-caption alignnone" style="width: 364px"><a href="http://carlwebster.com/files/2011/10/Figure0091.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3874" src="http://carlwebster.com/files/2011/10/Figure0091-354x300.png" alt="" width="354" height="300" /></a><p class="wp-caption-text">Figure 9</p></div>
<p><span style="font-family: Calibri;font-size: medium">Back in your Internet browser; go to </span><a href="http://tinyurl.com/XenApp6PSPolicies"><span style="color: #0000ff;font-family: Calibri;font-size: medium">http://tinyurl.com/XenApp6PSPolicies</span></a><span style="font-family: Calibri"><span style="font-size: medium"> (Figure 10).</span></span></p>
<div id="attachment_3875" class="wp-caption alignnone" style="width: 410px"><a href="http://carlwebster.com/files/2011/10/Figure0101.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3875" src="http://carlwebster.com/files/2011/10/Figure0101-400x300.png" alt="" width="400" height="300" /></a><p class="wp-caption-text">Figure 10</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Scroll down and click on <em>Citrix.GroupPolicy.Commands.psm1</em> (Figure 11).</span></span></p>
<div id="attachment_3876" class="wp-caption alignnone" style="width: 410px"><a href="http://carlwebster.com/files/2011/10/Figure0111.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3876" src="http://carlwebster.com/files/2011/10/Figure0111-400x300.png" alt="" width="400" height="300" /></a><p class="wp-caption-text">Figure 11</p></div>
<p><span style="font-size: medium"><span style="font-family: Calibri">Save the file in two different places:</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">C:\Windows\System32\WindowsPowerShell\v1.0\Modules, in a new folder named Citrix.GroupPolicy.Commands (Figure 12)</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules, in a new folder named Citrix.GroupPolicy.Commands (Figure 13)</span></span></p>
<div id="attachment_3877" class="wp-caption alignnone" style="width: 386px"><a href="http://carlwebster.com/files/2011/10/Figure0121.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3877" src="http://carlwebster.com/files/2011/10/Figure0121-376x300.png" alt="" width="376" height="300" /></a><p class="wp-caption-text">Figure 12</p></div>
<div id="attachment_3878" class="wp-caption alignnone" style="width: 385px"><a href="http://carlwebster.com/files/2011/10/Figure0131.png" rel="lightbox[3865]" title="Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3878" src="http://carlwebster.com/files/2011/10/Figure0131-375x300.png" alt="" width="375" height="300" /></a><p class="wp-caption-text">Figure 13</p></div>
<p><span style="font-size: medium"><span style="font-family: Calibri">You can now close your Internet browser.</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">Click <em>Start, Administrative Tools, Windows PowerShell Modules</em>.</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">To prepare for processing the Citrix farm policies, type in <strong>import-module Citrix.GroupPolicy.Commands</strong> and press <em>Enter</em>.</span></span></p>
<p>You just finished reading <a href="http://carlwebster.com/documenting-a-citrix-xenapp-6-5-farm-with-microsoft-powershell/">Documenting a Citrix XenApp 6.5 Farm with Microsoft PowerShell</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/documenting-a-citrix-xenapp-6-5-farm-with-microsoft-powershell/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>XenApp 6 Scripts Have Been Updated</title>
		<link>http://carlwebster.com/xenapp-6-scripts-have-been-updated/</link>
		<comments>http://carlwebster.com/xenapp-6-scripts-have-been-updated/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 17:00:05 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[documentation]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[updates]]></category>
		<category><![CDATA[xenapp 6]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3565</guid>
		<description><![CDATA[<p>While creating the XenApp 6.5 script and article, I came across numerous typos in the original XenApp 6 files. I have corrected the typos (i.e. priniting) in the XenApp 6 script and recreated the signed copy of the script also. I have also updated the XenApp 6 article with the corrections. Updated scripts: http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/ Update [...]</p><p>You just finished reading <a href="http://carlwebster.com/xenapp-6-scripts-have-been-updated/">XenApp 6 Scripts Have Been Updated</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>While creating the XenApp 6.5 script and article, I came across numerous typos in the original XenApp 6 files. I have corrected the typos (i.e. priniting) in the XenApp 6 script and recreated the signed copy of the script also. I have also updated the XenApp 6 article with the corrections.</p>
<p>Updated scripts: http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/</p>
<p>Update article: http://carlwebster.com/documenting-a-citrix-xenapp-6-farm-with-microsoft-powershell/</p>
<p>Let me know if you find any other typos or errors in any of the scripts.</p>
<p>Thanks</p>
<p>Webster</p>
<p>You just finished reading <a href="http://carlwebster.com/xenapp-6-scripts-have-been-updated/">XenApp 6 Scripts Have Been Updated</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/xenapp-6-scripts-have-been-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell</title>
		<link>http://carlwebster.com/documenting-a-citrix-xenapp-5-farm-with-microsoft-powershell/</link>
		<comments>http://carlwebster.com/documenting-a-citrix-xenapp-5-farm-with-microsoft-powershell/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 10:00:23 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2003]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2008]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[xenapp 5]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3762</guid>
		<description><![CDATA[<p>A customer site I was at recently needed their XenApp 5 farm documented. I remembered reading about Citrix having some PowerShell “stuff” for XenApp 5 so I started searching. I came across a short article by Michael Bogobowicz Send Farm Server &#38; Application Inventory By Email &#8212; XA6 PS Script located at http://community.citrix.com/pages/viewpage.action?pageId=148703582. That short [...]</p><p>You just finished reading <a href="http://carlwebster.com/documenting-a-citrix-xenapp-5-farm-with-microsoft-powershell/">Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Calibri;font-size: medium">A customer site I was at recently needed their XenApp 5 farm documented. I remembered reading about Citrix having some PowerShell “stuff” for XenApp 5 so I started searching. I came across a short article by Michael Bogobowicz <em>Send Farm Server &amp; Application Inventory By Email &#8212; XA6 PS Script</em> located at </span><a href="http://community.citrix.com/pages/viewpage.action?pageId=148703582"><span style="color: #0000ff;font-family: Calibri;font-size: medium">http://community.citrix.com/pages/viewpage.action?pageId=148703582</span></a><span style="font-family: Calibri"><span style="font-size: medium">. That short article really piqued my interest. I took Michael’s little script as the starting point to learn Microsoft’s PowerShell. With some help from PowerShell MVP and fellow CTP Brandon Shell and a lot of help from Exchange MVP Michael B. Smith, I turned the original script into over 2000 lines of PowerShell to thoroughly document a XenApp 5 farm.</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium"><span id="more-3762"></span></span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">This article will focus only on XenApp 5. There is already an article for XenApp 6 and there will be an article for XenApp 6.5.</span></span></p>
<p><span style="font-size: medium"><span style="font-family: Calibri">The prerequisites to follow along with this article are:</span></span></p>
<ul>
<li><span style="font-family: Calibri"><span style="font-size: medium">A server, physical or virtual, running Microsoft Windows Server 2003 or Windows Server 2008</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Citrix XenApp 5 for Windows Server 2003 or Windows Server 2008 installed</span></span></li>
</ul>
<p><span style="font-size: medium"><span style="font-family: Calibri">My lab for this article consists of:</span></span></p>
<ul>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2008 R2 Domain Controller</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2008 R2 SQL Server</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2003 Standard 32-bit with XenApp 5 and HRP7</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2003 Standard 64-bit with XenApp 5 and HRP7</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2008 Standard 32-bit with XenApp 5 and HRP1</span></span></li>
<li><span style="font-family: Calibri"><span style="font-size: medium">Windows Server 2008 Standard 64-bit with XenApp 5 and HRP1</span></span></li>
</ul>
<p><span style="font-size: medium"><span style="font-family: Calibri">The two different XenApp 5 versions are in their own XenApp farm.</span></span></p>
<p><span style="font-size: medium"><span style="font-family: Calibri">In this article, we will be installing the Citrix XenApp Commands Technology Preview (v3).</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">My initial goal was to see if I could walk down the nodes in the Delivery Services Console (Figure 1), or the Access Management Console (Figure 2), and see if I could document every nook and cranny.</span></span></p>
<div id="attachment_3763" class="wp-caption alignnone" style="width: 163px"><a href="http://carlwebster.com/files/2011/10/Figure001.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3763" src="http://carlwebster.com/files/2011/10/Figure001-153x300.png" alt="" width="153" height="300" /></a><p class="wp-caption-text">Figure 1</p></div>
<div id="attachment_3764" class="wp-caption alignnone" style="width: 154px"><a href="http://carlwebster.com/files/2011/10/Figure002.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3764" src="http://carlwebster.com/files/2011/10/Figure002-144x300.png" alt="" width="144" height="300" /></a><p class="wp-caption-text">Figure 2</p></div>
<p><span style="font-family: Calibri;font-size: medium">Before we can start using PowerShell to document anything in the XenApp 5 farms we first need to install the XenApp Commands Technology Preview (v3). From your XenApp 5 server, go to </span><a href="http://tinyurl.com/XA5CTPv3"><span style="color: #0000ff;font-family: Calibri;font-size: medium">http://tinyurl.com/XA5CTPv3</span></a><span style="font-family: Calibri"><span style="font-size: medium"> (Figure 3). <strong>Note:</strong> A MyCitrix.com login is required.</span></span></p>
<div id="attachment_3765" class="wp-caption alignnone" style="width: 308px"><a href="http://carlwebster.com/files/2011/10/Figure003.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3765" src="http://carlwebster.com/files/2011/10/Figure003-298x300.png" alt="" width="298" height="300" /></a><p class="wp-caption-text">Figure 3</p></div>
<p><span style="font-size: medium"><span style="font-family: Calibri">Click on <em>Download </em>and extract the file to C:\XA5CTP. You can now close your Internet browser. </span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">For a 32-bit server, click <em>Start</em>, <em>Run</em>, type in <strong>C:\XA5CTP\Citrix.XenApp.Commands\Citrix.XenApp.Commands.Install_x86.msi</strong> and press <em>Enter</em> .</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">For a 64-bit server, click <em>Start</em>, <em>Run</em>, type in <strong>C:\XA5CTP\Citrix.XenApp.Commands\Citrix.XenApp.Commands.Install_x64.msi</strong> and press <em>Enter</em> .</span></span></p>
<p><span style="font-family: Calibri"><span style="font-size: medium">Click <em>Run</em> (Figure 4).</span></span></p>
<div id="attachment_3766" class="wp-caption alignnone" style="width: 411px"><a href="http://carlwebster.com/files/2011/10/Figure004.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3766" src="http://carlwebster.com/files/2011/10/Figure004-401x300.png" alt="" width="401" height="300" /></a><p class="wp-caption-text">Figure 4</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">Select <em>I accept the terms of this license agreement</em> and click <em>Install</em> (Figure 5).</span></span></p>
<div id="attachment_3767" class="wp-caption alignnone" style="width: 398px"><a href="http://carlwebster.com/files/2011/10/Figure005.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3767" src="http://carlwebster.com/files/2011/10/Figure005-388x300.png" alt="" width="388" height="300" /></a><p class="wp-caption-text">Figure 5</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">After a few seconds, the installation completes. Click <em>Finish</em> (Figure 6).</span></span></p>
<div id="attachment_3768" class="wp-caption alignnone" style="width: 398px"><a href="http://carlwebster.com/files/2011/10/Figure006.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3768" src="http://carlwebster.com/files/2011/10/Figure006-388x300.png" alt="" width="388" height="300" /></a><p class="wp-caption-text">Figure 6</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">You now have new Start Menu items under <em>All Programs</em>, <em>Citrix</em>. Windows Server 2003 is shown in and Windows Server 2008 is shown in .</span></span></p>
<div id="attachment_3769" class="wp-caption alignnone" style="width: 471px"><a href="http://carlwebster.com/files/2011/10/Figure007.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3769" src="http://carlwebster.com/files/2011/10/Figure007-461x300.png" alt="" width="461" height="300" /></a><p class="wp-caption-text">Figure 7</p></div>
<div id="attachment_3770" class="wp-caption alignnone" style="width: 249px"><a href="http://carlwebster.com/files/2011/10/Figure008.png" rel="lightbox[3762]" title="Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell"><img class="size-medium wp-image-3770" src="http://carlwebster.com/files/2011/10/Figure008-239x300.png" alt="" width="239" height="300" /></a><p class="wp-caption-text">Figure 8</p></div>
<p><span style="font-family: Calibri"><span style="font-size: medium">The menu item that says <em>Windows PowerShell with XenApp Commands (CTP3)</em> will be the one we use for this article. Click <em>Start, All Programs, Citrix, XenApp Commands, Windows PowerShell with XenApp Commands (CTP3)</em>. A PowerShell session starts with the Citrix PowerShell modules already loaded.</span></span></p>
<p>You just finished reading <a href="http://carlwebster.com/documenting-a-citrix-xenapp-5-farm-with-microsoft-powershell/">Documenting a Citrix XenApp 5 Farm with Microsoft PowerShell</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/documenting-a-citrix-xenapp-5-farm-with-microsoft-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate</title>
		<link>http://carlwebster.com/how-to-digitally-sign-a-microsoft-powershell-script-with-a-third-party-code-signing-certificate/</link>
		<comments>http://carlwebster.com/how-to-digitally-sign-a-microsoft-powershell-script-with-a-third-party-code-signing-certificate/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 20:00:08 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2003]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2008]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[code signing]]></category>
		<category><![CDATA[powershell]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3705</guid>
		<description><![CDATA[<p>I recently wrote an article on using Microsoft PowerShell to document a Citrix XenApp 6.0 farm.  I am also in the process of finishing up follow-up articles for XenApp 5 and XenApp 6.5.  One of the options I wanted to make available is a digitally signed copy of the script used in that article.  As [...]</p><p>You just finished reading <a href="http://carlwebster.com/how-to-digitally-sign-a-microsoft-powershell-script-with-a-third-party-code-signing-certificate/">How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>I recently wrote an article on using Microsoft PowerShell to document a Citrix XenApp 6.0 farm.  I am also in the process of finishing up follow-up articles for XenApp 5 and XenApp 6.5.  One of the options I wanted to make available is a digitally signed copy of the script used in that article.  As there may be environments where only signed PowerShell scripts are allowed, I want to make signed copies of all my PowerShell scripts available.  I still consider myself a PowerShell rookie, so I wanted to document what I had to go through to sign a PowerShell script.</p>
<p>The first thing needed is to request a code signing certificate.  At DigiCert, I clicked on <em>Code Signing Certificates </em>(Figure 1).</p>
<div id="attachment_3706" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0011.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3706" src="http://carlwebster.com/files/2011/09/Figure0011-530x237.png" alt="" width="530" height="237" /></a><p class="wp-caption-text">Figure 1</p></div>
<p>I then selected <em>Buy Now</em> (Figure 2).</p>
<div id="attachment_3707" class="wp-caption alignnone" style="width: 415px"><a href="http://carlwebster.com/files/2011/09/Figure0021.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3707" src="http://carlwebster.com/files/2011/09/Figure0021-405x300.png" alt="" width="405" height="300" /></a><p class="wp-caption-text">Figure 2</p></div>
<p>I then selected <em>Code Signing Cert, </em>a <em>Validity Period </em>and clicked <em>Continue</em> (Figure 3).</p>
<div id="attachment_3708" class="wp-caption alignnone" style="width: 292px"><a href="http://carlwebster.com/files/2011/09/Figure0031.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3708" src="http://carlwebster.com/files/2011/09/Figure0031-282x300.png" alt="" width="282" height="300" /></a><p class="wp-caption-text">Figure 3</p></div>
<p>Next, I selected <em>Microsoft Authenticode</em> and clicked <em>Continue </em>(Figure 4).</p>
<div id="attachment_3709" class="wp-caption alignnone" style="width: 312px"><a href="http://carlwebster.com/files/2011/09/Figure0041.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3709" src="http://carlwebster.com/files/2011/09/Figure0041-302x300.png" alt="" width="302" height="300" /></a><p class="wp-caption-text">Figure 4</p></div>
<p>Next, I filled in my <em>Organization Details</em> and clicked <em>Continue</em> (Figure 5).</p>
<div id="attachment_3710" class="wp-caption alignnone" style="width: 431px"><a href="http://carlwebster.com/files/2011/09/Figure0051.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3710" src="http://carlwebster.com/files/2011/09/Figure0051-421x300.png" alt="" width="421" height="300" /></a><p class="wp-caption-text">Figure 5</p></div>
<p>I then filled in my <em>Contact Details</em> and clicked <em>Continue</em> (Figure 6).</p>
<div id="attachment_3711" class="wp-caption alignnone" style="width: 404px"><a href="http://carlwebster.com/files/2011/09/Figure0061.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3711" src="http://carlwebster.com/files/2011/09/Figure0061-394x300.png" alt="" width="394" height="300" /></a><p class="wp-caption-text">Figure 6</p></div>
<p>I removed the Payment step information.  I selected <em>I agree to the Terms of Service above</em> and clicked <em>Complete Order</em> (Figure 7).</p>
<div id="attachment_3712" class="wp-caption alignnone" style="width: 416px"><a href="http://carlwebster.com/files/2011/09/Figure0071.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3712" src="http://carlwebster.com/files/2011/09/Figure0071-406x300.png" alt="" width="406" height="300" /></a><p class="wp-caption-text">Figure 7</p></div>
<p>I then received an e-mail from DigiCert Support asking me to verify that I did request a Code Signing Certificate.  After I replied to the e-mail in the affirmative, I received another e-mail with a link to create the code-signing certificate (Figure 8).</p>
<div id="attachment_3713" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0081.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3713" src="http://carlwebster.com/files/2011/09/Figure0081-530x183.png" alt="" width="530" height="183" /></a><p class="wp-caption-text">Figure 8</p></div>
<p>Clicking the link in the e-mail opens my Internet browser with the following popup (Figure 9).  I clicked <em>Yes</em>.</p>
<div id="attachment_3714" class="wp-caption alignnone" style="width: 425px"><a href="http://carlwebster.com/files/2011/09/Figure0091.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-full wp-image-3714" src="http://carlwebster.com/files/2011/09/Figure0091.png" alt="" width="415" height="229" /></a><p class="wp-caption-text">Figure 9</p></div>
<p>Which then took me to the web site shown in Figure 10.  I then clicked <em>Generate Certificate</em>.</p>
<div id="attachment_3715" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0101.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3715" src="http://carlwebster.com/files/2011/09/Figure0101-530x267.png" alt="" width="530" height="267" /></a><p class="wp-caption-text">Figure 10</p></div>
<p>Which then took me to the web page shown in Figure 11.</p>
<div id="attachment_3716" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0111.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3716" src="http://carlwebster.com/files/2011/09/Figure0111-530x190.png" alt="" width="530" height="190" /></a><p class="wp-caption-text">Figure 11</p></div>
<p>I verified in Internet Explorer that the certificate is installed (Figure 12 and Figure 13).</p>
<div id="attachment_3717" class="wp-caption alignnone" style="width: 339px"><a href="http://carlwebster.com/files/2011/09/Figure0121.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3717" src="http://carlwebster.com/files/2011/09/Figure0121-329x300.png" alt="" width="329" height="300" /></a><p class="wp-caption-text">Figure 12</p></div>
<div id="attachment_3718" class="wp-caption alignnone" style="width: 250px"><a href="http://carlwebster.com/files/2011/09/Figure0131.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3718" src="http://carlwebster.com/files/2011/09/Figure0131-240x300.png" alt="" width="240" height="300" /></a><p class="wp-caption-text">Figure 13</p></div>
<p>On the computer where the Code Signing Certificate was installed, I started a PowerShell session running as Administrator.  Using the information from Don Jones’ <em>Windows PowerShell 2.0 TFM</em> book on page 149, I entered the following PowerShell command (should be one long line):</p>
<pre class="brush: powershell; title: ; notranslate">
Set-AuthenticodeSignature `
&quot;C:\Users\cwebster\Documents\carlwebster.com\Documenting a Citrix XenApp 6 Farm with Microsoft PowerShell\XA6_Inventory_Signed.ps1&quot; `
@(Get-Childitem cert:\CurrentUser\My -codesigning)[0]
</pre>
<p>Which then returns a successful signing (Figure 14).</p>
<div id="attachment_3719" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0141.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3719" src="http://carlwebster.com/files/2011/09/Figure0141-530x103.png" alt="" width="530" height="103" /></a><p class="wp-caption-text">Figure 14</p></div>
<p>Opening my script shows the added signature block (Figure 15).</p>
<div id="attachment_3720" class="wp-caption alignnone" style="width: 394px"><a href="http://carlwebster.com/files/2011/09/Figure0151.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3720" src="http://carlwebster.com/files/2011/09/Figure0151-384x300.png" alt="" width="384" height="300" /></a><p class="wp-caption-text">Figure 15</p></div>
<p>To verify the newly signed script, I went to my XenApp 6 server, copied the signed script to the C:\PSScripts folder, started a PowerShell session as Administrator and changed to the C:\PSScripts folder.  I then set the PowerShell script execution policy to AllSigned (Figure 16).</p>
<div id="attachment_3721" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0161.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3721" src="http://carlwebster.com/files/2011/09/Figure0161-530x70.png" alt="" width="530" height="70" /></a><p class="wp-caption-text">Figure 16</p></div>
<p>I then tried to run the original unsigned script (Figure 17).  The script would not run because it is not digitally signed.</p>
<div id="attachment_3722" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0171.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3722" src="http://carlwebster.com/files/2011/09/Figure0171-530x78.png" alt="" width="530" height="78" /></a><p class="wp-caption-text">Figure 17</p></div>
<p>I then tried to run the signed script (Figure 18).</p>
<div id="attachment_3723" class="wp-caption alignnone" style="width: 540px"><a href="http://carlwebster.com/files/2011/09/Figure0181.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3723" src="http://carlwebster.com/files/2011/09/Figure0181-530x58.png" alt="" width="530" height="58" /></a><p class="wp-caption-text">Figure 18</p></div>
<p>I answered <strong>A</strong> to <em>Always run</em> scripts signed by me (Figure 19) and the script runs successfully.</p>
<div id="attachment_3724" class="wp-caption alignnone" style="width: 479px"><a href="http://carlwebster.com/files/2011/09/Figure0191.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3724" src="http://carlwebster.com/files/2011/09/Figure0191-469x300.png" alt="" width="469" height="300" /></a><p class="wp-caption-text">Figure 19</p></div>
<p>By answering <em>Always run</em> my code signing certificate was installed on the server in the Trusted Publishers store (Figure 20).</p>
<div id="attachment_3725" class="wp-caption alignnone" style="width: 339px"><a href="http://carlwebster.com/files/2011/09/Figure0201.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3725" src="http://carlwebster.com/files/2011/09/Figure0201-329x300.png" alt="" width="329" height="300" /></a><p class="wp-caption-text">Figure 20</p></div>
<p>The next time I run the signed script, the script automatically runs (Figure 21).</p>
<div id="attachment_3726" class="wp-caption alignnone" style="width: 422px"><a href="http://carlwebster.com/files/2011/09/Figure0211.png" rel="lightbox[3705]" title="How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate"><img class="size-medium wp-image-3726" src="http://carlwebster.com/files/2011/09/Figure0211-412x300.png" alt="" width="412" height="300" /></a><p class="wp-caption-text">Figure 21</p></div>
<p>What I learned is that digitally signing PowerShell scripts is simple to do.  It isnot cheap, but it is simple.</p>
<p>You just finished reading <a href="http://carlwebster.com/how-to-digitally-sign-a-microsoft-powershell-script-with-a-third-party-code-signing-certificate/">How To Digitally Sign a Microsoft PowerShell Script with a Third-Party Code Signing Certificate</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/how-to-digitally-sign-a-microsoft-powershell-script-with-a-third-party-code-signing-certificate/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Where to Get Copies of the XenApp Farm Documentation Scripts</title>
		<link>http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/</link>
		<comments>http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/#comments</comments>
		<pubDate>Fri, 30 Sep 2011 19:00:16 +0000</pubDate>
		<dc:creator>Carl Webster</dc:creator>
				<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2003]]></category>
		<category><![CDATA[XenApp 5 for Windows Server 2008]]></category>
		<category><![CDATA[XenApp 6 for Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp 6.5 for Windows Server 2008 R2]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[scripts]]></category>
		<category><![CDATA[xenapp]]></category>

		<guid isPermaLink="false">http://webster.skyrocket.ws/?p=3741</guid>
		<description><![CDATA[<p>Many people have asked me where they can get copies of the PowerShell documentation scripts.  To make it easier to find, I have linked to all of them in this one article.</p><p>You just finished reading <a href="http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/">Where to Get Copies of the XenApp Farm Documentation Scripts</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></description>
			<content:encoded><![CDATA[<p>Many people have asked me where they can get copies of the PowerShell documentation scripts.  To make it easier to find, I have linked to all of them in this one article.  Each script has five parts:</p>
<ol>
<li>ReadMe file</li>
<li>Unsigned script with PS1 extension</li>
<li>Unsigned script with TXT extension</li>
<li>Signed script with PS1 extension</li>
<li>Signed script with TXT extension</li>
</ol>
<p><strong><span id="more-3741"></span>XenApp 6.5 Farm Documentation Scripts:</strong></p>
<p>Updated October 9, 2011</p>
<ol>
<li><a href="http://dl.dropbox.com/u/43555945/XA65_InventoryReadMe.txt">ReadMe file</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA65_Inventory.ps1">Unsigned script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA65_Inventory.txt">Unsigned script with TXT extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA65_Inventory_Signed.ps1">Signed script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA65_Inventory_Signed.txt">Signed script with TXT extension</a></li>
</ol>
<p><strong>XenApp 6 Farm Documentation Scripts:</strong></p>
<p>Updated October 9, 2011</p>
<ol>
<li><a href="http://dl.dropbox.com/u/43555945/XA6_InventoryReadMe.txt">ReadMe file</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA6_Inventory.ps1">Unsigned script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA6_Inventory.txt">Unsigned script with TXT extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA6_Inventory_Signed.ps1">Signed script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA6_Inventory_Signed.txt">Signed script with TXT extension</a></li>
</ol>
<p><strong>XenApp 5 Farm Documentation Scripts:</strong></p>
<p>Updated October 9, 2011</p>
<ol>
<li><a href="http://dl.dropbox.com/u/43555945/XA5_InventoryReadMe.txt">ReadMe file</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA5_Inventory.ps1">Unsigned script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA5_Inventory.txt">Unsigned script with TXT extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA5_Inventory_Signed.ps1">Signed script with PS1 extension</a></li>
<li><a href="http://dl.dropbox.com/u/43555945/XA5_Inventory_Signed.txt">Signed script with TXT extension</a></li>
</ol>
<p>You just finished reading <a href="http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/">Where to Get Copies of the XenApp Farm Documentation Scripts</a> on <a href="http://carlwebster.com">Carl Webster</a>. Please consider leaving a comment!</p>]]></content:encoded>
			<wfw:commentRss>http://carlwebster.com/where-to-get-copies-of-the-xenapp-farm-documentation-scripts/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

