<?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>ctxfarmer</title>
	<atom:link href="http://www.ctxfarmer.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ctxfarmer.com</link>
	<description>trapped inside the matrix</description>
	<lastBuildDate>Tue, 17 Jan 2012 23:26:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Citrix XenApp: Publish a desktop for every server in a XenApp farm</title>
		<link>http://www.ctxfarmer.com/citrix-xenapp-publish-a-desktop-for-every-server-in-a-xenapp-farm/</link>
		<comments>http://www.ctxfarmer.com/citrix-xenapp-publish-a-desktop-for-every-server-in-a-xenapp-farm/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 04:11:42 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Slider]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[New-XAPublishDesktop]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[published desktop]]></category>
		<category><![CDATA[XATools]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=384</guid>
		<description><![CDATA[I added a Powershell module to XATools that can be used to publish a desktop to every server in a XenApp farm.&#160; The same technique could be used for published applications. You’ll need a “template application”.&#160; In the demo, I’m using a published desktop. Leave the server list blank. Disable the application. Add the user [...]]]></description>
			<content:encoded><![CDATA[<p><span id="more-384"></span>
<p>I added a Powershell module to XATools that can be used to publish a desktop to every server in a XenApp farm.&#160; The same technique could be used for published applications.</p>
<p>You’ll need a “template application”.&#160; In the demo, I’m using a published desktop.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb.png" width="244" height="215" /></a></p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image1.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb1.png" width="244" height="216" /></a></p>
<p>Leave the server list blank.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb2.png" width="244" height="216" /></a></p>
<p>Disable the application.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image3.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb3.png" width="244" height="48" /></a></p>
<p>Add the user accounts for the helpdesk (or admins) that use the published application for testing a particular server.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image4.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb4.png" width="244" height="215" /></a></p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image5.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb5.png" width="244" height="215" /></a></p>
<p>Configure advanced settings as needed.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image6.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/image_thumb6.png" width="244" height="216" /></a>
<p>Now that you have a template you can use Powershell to publish a desktop for each server.</p>
	<video id="wp_mep_1" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/New-PublishedDesktop.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/New-PublishedDesktop.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_1').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Enable the applications as needed.</p>
<p>Where&#8217;s the code?<br />
I&#8217;m trying to collect and consolidate my Powershell scripts into modules. The code for this script is included in the <a title="XATools" href="http://www.ctxfarmer.com/powershell-modules/xatools/">XATools Powershell module</a>.</p>
<pre class="brush: powershell; title: ; notranslate">
Function New-XAPublishDesktop()
{
  param
  (
    [Parameter(ValueFromPipeline=$true)]
    [string]$ServerName,
    [Parameter(Mandatory=$true)]
    [string]$TemplateName
  )
  BEGIN
  {
    Add-PSSnapin Citrix* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    foreach($Server in $ServerName)
    {
      $app = Copy-XAApplication -BrowserName $TemplateName
      $app = Add-XAApplicationServer -InputObject $app -ServerNames $Server
      $NewDisplayName = $Server.ToUpper()+&quot; Desktop&quot;
      $app = Rename-XAApplication -BrowserName ($app).BrowserName -NewDisplayName $NewDisplayName
      $app
    }
  }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/citrix-xenapp-publish-a-desktop-for-every-server-in-a-xenapp-farm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/New-PublishedDesktop.mp4" length="6236422" type="video/mp4" />
		</item>
		<item>
		<title>Citrix XenApp: Measure Zone Latency with Powershell</title>
		<link>http://www.ctxfarmer.com/citrix-xenapp-measure-zone-latency-with-powershell/</link>
		<comments>http://www.ctxfarmer.com/citrix-xenapp-measure-zone-latency-with-powershell/#comments</comments>
		<pubDate>Sat, 23 Jul 2011 21:19:03 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Slider]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[ica]]></category>
		<category><![CDATA[latency]]></category>
		<category><![CDATA[Measure-XAZoneLatency]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Test-XAActiveICASession]]></category>
		<category><![CDATA[Test-XALatencyValue]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=366</guid>
		<description><![CDATA[I added a Powershell module to XATools that measures XenApp session latency by zone. Users with extremely high latency will distort the data. Where&#8217;s the code? I&#8217;m trying to collect and consolidate my Powershell scripts into modules. The code for this script is included in the XATools Powershell module.]]></description>
			<content:encoded><![CDATA[<p><span id="more-366"></span>
<p>I added a Powershell module to XATools that measures XenApp session latency by zone. Users with extremely high latency will distort the data.</p>
	<video id="wp_mep_2" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Measure-XAZoneLatency.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Measure-XAZoneLatency.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_2').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Where&#8217;s the code?<br />
I&#8217;m trying to collect and consolidate my Powershell scripts into modules. The code for this script is included in the <a title="XATools" href="http://www.ctxfarmer.com/powershell-modules/xatools/">XATools Powershell module</a>.</p>
<pre class="brush: powershell; title: ; notranslate">
Function Measure-XAZoneLatency()
{
  param
  (
    [Parameter(Mandatory=$true,
               ValueFromPipeline=$true)]
    [string]$zoneName=&quot;&quot;
  )
  BEGIN
  {

  }
  PROCESS
  {
    foreach($zone in $zoneName)
    {
      $XASessions = Get-XAServer -ZoneName $zone -OnlineOnly | Get-XASession
      $XASessionCounters = $XASessions | Where-Object {(Test-XAActiveICASession -XASession $_)} | Get-XASessionCounter -ErrorAction SilentlyContinue
      $XASessionCounters = $XASessionCounters | Where-Object {(Test-XALatencyValue -Value $_.AverageLatency)}
      $XASessionCounters = $XASessionCounters | Where-Object {(Test-XALatencyValue -Value $_.LastLatency)}
      $XASessionCounters = $XASessionCounters | Where-Object {(Test-XALatencyValue -Value $_.LatencyDeviation)}

      $AverageLatency = $XASessionCounters | Measure-Object -Property AverageLatency -ave -max -min
      $LastLatency = $XASessionCounters | Measure-Object -Property LastLatency -ave -max -min
      $LatencyDeviation = $XASessionCounters | Measure-Object -Property LatencyDeviation -ave -max -min

      $obj = New-Object PSObject
      $obj | Add-Member -MemberType NoteProperty -Name ZoneName -Value $zone

      $obj | Add-Member -MemberType NoteProperty -Name AverageLatency -Value (&quot;{0:N2}&quot; -f $AverageLatency.Average)
      $obj | Add-Member -MemberType NoteProperty -Name MinAverageLatency -Value (&quot;{0:N2}&quot; -f $AverageLatency.Minimum)
      $obj | Add-Member -MemberType NoteProperty -Name MaxAverageLatency -Value (&quot;{0:N2}&quot; -f $AverageLatency.Maximum)

      $obj | Add-Member -MemberType NoteProperty -Name AvgLastLatency -Value (&quot;{0:N2}&quot; -f $LastLatency.Average)
      $obj | Add-Member -MemberType NoteProperty -Name MinLastLatency -Value (&quot;{0:N2}&quot; -f $LastLatency.Minimum)
      $obj | Add-Member -MemberType NoteProperty -Name MaxLastLatency -Value (&quot;{0:N2}&quot; -f $LastLatency.Maximum)

      $obj | Add-Member -MemberType NoteProperty -Name AvgLatencyDeviation -Value (&quot;{0:N2}&quot; -f $LatencyDeviation.Average)
      $obj | Add-Member -MemberType NoteProperty -Name MinLatencyDeviation -Value (&quot;{0:N2}&quot; -f $LatencyDeviation.Minimum)
      $obj | Add-Member -MemberType NoteProperty -Name MaxLatencyDeviation -Value (&quot;{0:N2}&quot; -f $LatencyDeviation.Maximum)

      $obj

    }
  }
}
Function Test-XAActiveICASession()
{
  param
  (
    [Parameter(Mandatory=$true,
               ValueFromPipeLine=$true)]
    $XASession
  )
  BEGIN
  {

  }
  PROCESS
  {
    [boolean]$result = $true 

    if($XASession.State -ne &quot;Active&quot;)
    {
      $result = $false
    }

    if(-not $XASession.SessionName.StartsWith(&quot;ICA&quot;))
    {
      $result = $false
    }

    if($XASession.Protocol -ne &quot;Ica&quot;)
    {
      $result = $false
    }
    return $result
  }
}
Function Test-XALatencyValue()
{
  param
  (
    [Parameter(Mandatory=$true)]
    [long]$Value
  )
  BEGIN
  {
    $badValues = @(4294967295)
  }
  PROCESS
  {
    [int]$minValue = 0
    [boolean]$result = $true

    foreach($badValue in $badValues)
    {
      if($Value -eq $badValue)
      {
        $result = $false
      }
    }

    if($Value -lt $minValue)
    {
      $result = $false
    }
    return $result
  }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/citrix-xenapp-measure-zone-latency-with-powershell/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Measure-XAZoneLatency.mp4" length="128219" type="video/mp4" />
		</item>
		<item>
		<title>Citrix XenApp: Real-time Session Counter with Powershell</title>
		<link>http://www.ctxfarmer.com/citrix-xenapp-real-time-session-counter/</link>
		<comments>http://www.ctxfarmer.com/citrix-xenapp-real-time-session-counter/#comments</comments>
		<pubDate>Thu, 21 Jul 2011 23:02:47 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Slider]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[module]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[session counter]]></category>
		<category><![CDATA[Start-XASessionCounter]]></category>
		<category><![CDATA[XATools]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=361</guid>
		<description><![CDATA[I wrote a Powershell module that displays active and disconnected session counts every 30 seconds. I used this module earlier this year to monitor a XenApp farm when our office was closed due to weather. A large portion of the staff had to work from home so it helped determine when additional servers needed to [...]]]></description>
			<content:encoded><![CDATA[<p><span id="more-361"></span>
<p>I wrote a Powershell module that displays active and disconnected session counts every 30 seconds.</p>
<p>I used this module earlier this year to monitor a XenApp farm when our office was closed due to weather.  A large portion of the staff had to work from home so it helped determine when additional servers needed to be enabled to handle the extra users.</p>
<p>Install the Citrix XenApp commandlets, import XATools.psm1 and run &#8220;Start-XASessionCounter&#8221;.</p>
<pre class="brush: powershell; title: ; notranslate">
Start-XASessionCounter
</pre>
<p>Script Output<br />
<img src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/sessioncounter.png" alt="" title="sessioncounter" width="287" height="104" class="size-full wp-image-362" /></p>
<p>Where&#8217;s the code?<br />
I&#8217;m trying to collect and consolidate my Powershell scripts into modules.  The code for this script is included in the <a href="http://www.ctxfarmer.com/powershell-modules/xatools/" title="XATools">XATools Powershell module</a>.</p>
<pre class="brush: powershell; title: ; notranslate">
Function Start-XASessionCounter()
{
  param
  (
    [Parameter(Mandatory=$false)]
    [int]$UpdateInterval=30,
    [Parameter(Mandatory=$false)]
    [boolean]$showPeak=$true
  )
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin Citrix* -ErrorAction SilentlyContinue
    $global:peakActiveSessions = 0
    $global:peakASTime = &quot;&quot;
    $global:peakDisconnectedSessions = 0
    $global:peakDSTime = &quot;&quot;
    $global:peakTotalSessions = 0
    $global:peakTSTime = &quot;&quot;
  }
  PROCESS
  {
    while($true)
    {
      Get-XASessionCount
      if($showPeak)
      {
        Write-Host &quot;`nPeak Active Sessions: $global:peakActiveSessions @ $global:peakASTime&quot;
        Write-Host &quot;Peak Disconnected Sessions: $global:peakDisconnectedSessions @ $global:peakDSTime&quot;
        Write-Host &quot;Peak Total Sessions: $global:peakTotalSessions @ $global:peakTSTime&quot;
      }
      Start-Sleep -seconds $UpdateInterval
    }
  }
}
Function Get-XASessionCount()
{
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin Citrix* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    $dateTime = Get-Date
    $sessions = Get-XaSession
    Clear-Host
    $active =  ($sessions | ? {$_.State -eq &quot;Active&quot; -and $_.Protocol -eq &quot;Ica&quot;}).Count
    $disconnected = ($sessions | ? {$_.State -eq &quot;Disconnected&quot; -and $_.Protocol -eq &quot;Ica&quot;}).Count
    $total = ($sessions | ? {$_.Protocol -eq &quot;Ica&quot;}).Count
    if($active -gt $global:peakActiveSessions)
    {
      $global:peakActiveSessions = $active
      $global:peakASTime = $dateTime.ToString()
    }
    if($disconnected -gt $global:peakDisconnectedSessions)
    {
      $global:peakDisconnectedSessions = $disconnected
      $global:peakDSTime = $dateTime.ToString()
    }
    if($total -gt $global:peakTotalSessions)
    {
      $global:peakTotalSessions = $total
      $global:peakTSTime = $dateTime.ToString()
    }
    Write-Host $dateTime
    Write-Host &quot;`nActive Sessions: $active&quot;
    Write-Host &quot;Disconnected Sessions: $disconnected&quot;
    Write-Host &quot;Total Sessions: $total&quot;
  }
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/citrix-xenapp-real-time-session-counter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Citrix Provisioning Server &#8211; Using Powershell to add and remove device personality strings</title>
		<link>http://www.ctxfarmer.com/citrix-provisioning-server-using-powershell-to-add-and-remove-device-personality-strings/</link>
		<comments>http://www.ctxfarmer.com/citrix-provisioning-server-using-powershell-to-add-and-remove-device-personality-strings/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 05:33:21 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Provisioning Server]]></category>
		<category><![CDATA[Slider]]></category>
		<category><![CDATA[Add-PVSDevicePersonality]]></category>
		<category><![CDATA[Citrix Provisioning Server]]></category>
		<category><![CDATA[Convert-MCLI]]></category>
		<category><![CDATA[Get-PVSDevice]]></category>
		<category><![CDATA[Get-PVSDevicePersonality]]></category>
		<category><![CDATA[MCLI]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Remove-PVSDevicePersonality]]></category>
		<category><![CDATA[Symantec Endpoint Protection]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=341</guid>
		<description><![CDATA[I wrote a Powershell module that can be used to assign personality strings to PVS target devices. I&#8217;ll demonstrate how the module can be used to assign random 32 character strings to PVS target devices. It might come in handy if you&#8217;re following the Symantec KB article for configuring SEP with PVS target devices. You [...]]]></description>
			<content:encoded><![CDATA[<p><span id="more-341"></span>I wrote a Powershell module that can be used to assign personality strings to PVS target devices.</p>
<p>I&#8217;ll demonstrate how the module can be used to assign random 32 character strings to PVS target devices.</p>
<p>It might come in handy if you&#8217;re following the Symantec KB article for configuring SEP with PVS target devices.</p>
<p>You can find the article here:</p>
<p><a href="http://www.symantec.com/business/support/index?page=content&amp;id=TECH123419&amp;locale=en_US" target="_blank">How to prepare SEP clients on virtual disks for use with Citrix Provisioning Server</a></p>
<p>** Disclaimer: I do not use the technique documented in the Symantec KB article to make SEP work on PVS target devices.  I&#8217;m using the article to demonstrate the Powershell module.</p>
<p>** Symantec&#8217;s batch script has an error: The batch script on Symantec&#8217;s website has a typo and should be modified before use.</p>
<p>Here’s the line with the problem.</p>
<pre class="brush: plain; title: ; notranslate">
del /f %hwidFolder%\sephwid.xml
</pre>
<p>You can correct the problem by adding “/Q”.</p>
<pre class="brush: plain; title: ; notranslate">
del /q /f %hwidFolder%\sephwid.xml
</pre>
<p>** The paths in Symantec&#8217;s batch script should be modified based on the target device OS &#8211; x86 or x64.</p>
<p>Now let&#8217;s concentrate on assigning random 32 character hwids to the target devices with a custom Powershell module and the Citrix Provisioning Server Powershell commandlets.</p>
<p>Install the Provisioning Server Powershell snapin.</p>
	<video id="wp_mep_3" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Install-Citrix-Provisioning-Server-Powershell-Snapin.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Install-Citrix-Provisioning-Server-Powershell-Snapin.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_3').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Custom Powershell module &#8211; PVSTools.psm1</p>
<pre class="brush: powershell; title: ; notranslate">
Function Convert-MCLI()
{
  param
  (
    [Parameter(Mandatory=$true)]
    $results,
    [Parameter(Mandatory=$false)]
    $TreatResultsAsValues=$false,
    [Parameter(Mandatory=$false)]
    $addName=&quot;&quot;,
    [Parameter(Mandatory=$false)]
    $addValue=&quot;&quot;
  )
  if($TreatResultsAsValues)
  {
    $strArr = @()
    $str = &quot;&quot;
    foreach($line in $results)
    {
      if($line.StartsWith(&quot;Record #&quot;))
      {
        if(-not ($str -eq &quot;&quot;))
        {
          $strArr += $str
        }
        $str = &quot;&quot;
      }
      elseif(-not $line.StartsWith(&quot;Executing:&quot;))
      {
        if($line.Contains(&quot;:&quot;))
        {
          $name = $line.SubString(0,$line.IndexOf(&quot;:&quot;)).Trim()
          $value = $line.SubString($line.IndexOf(&quot;:&quot;)+1,($line.Length)-($line.indexof(&quot;:&quot;))-1).Trim()
          if($str.Length -gt 0)
          {
            $str += &quot;,&quot;&quot;$name=$value&quot;&quot;&quot;
          }
          else
          {
            $str = &quot;&quot;&quot;$name=$value&quot;&quot;&quot;
          }
        }
      }
    }
    if(-not ($str -eq &quot;&quot;))
    {
      $strArr += $str
    }
    $obj = New-object PSObject
    if($addName.Length -gt 0)
    {
      $obj | Add-Member -MemberType NoteProperty -Name $addName -value $addValue
    }
    $obj | Add-Member -MemberType NoteProperty -Name devicePersonality -value $strArr
    $obj
  }
  else
  {
    $objs = @()
    foreach($line in $results)
    {
      if($line.StartsWith(&quot;Record #&quot;))
      {
        if(-not ($obj -eq $null))
        {
          $objs += $obj
        }
        $obj = New-object PSObject
      }
      elseif(-not $line.StartsWith(&quot;Executing:&quot;))
      {
        if($line.Contains(&quot;:&quot;))
        {
          $name = $line.SubString(0,$line.IndexOf(&quot;:&quot;)).Trim()
          $value = ($line.SubString($line.IndexOf(&quot;:&quot;)+1,($line.Length)-($line.indexof(&quot;:&quot;))-1)).Trim()
          $obj | Add-Member -MemberType NoteProperty -Name $name -Value $value
        }
      }
    }
    if(-not ($obj -eq $null))
    {
      $objs += $obj
    }
    $objs
    return
  }
}
Function Get-PVSDevicePersonality()
{
  param
  (
    [Parameter(Mandatory=$true,
               ValueFromPipelineByPropertyName=$true,
               ValueFromPipeLine=$true)]
    [string]$deviceName=&quot;&quot;
  )
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin mcli* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    foreach($device in $deviceName)
    {
      $cmd = &quot;mcli-get -t devicepersonality -p &quot;&quot;deviceName=$device&quot;&quot;&quot;
      $results = Invoke-Expression -Command $cmd
      Convert-MCLI -results $results -TreatResultsAsValues $true -addName &quot;deviceName&quot; -addValue $device
    }
  }
}
Function Get-PVSDevice()
{
  param
  (
    [Parameter(Mandatory=$false,
               ValueFromPipelineByPropertyName=$true,
               ValueFromPipeLine=$true)]
    [string]$deviceName=&quot;&quot;
  )
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin mcli* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    foreach($device in $deviceName)
    {
      if($device.Length -gt 0)
      {
        $cmd = &quot;mcli-get -t device -p &quot;&quot;deviceName=$device&quot;&quot;&quot;
      }
      else
      {
        $cmd = &quot;mcli-get -t device&quot;
      }
      $results = Invoke-Expression -Command $cmd
      Convert-MCLI -results $results
    }
  }
}
Function Add-PVSDevicePersonality()
{
  param
  (
    [Parameter(Mandatory=$true,
               ValueFromPipelineByPropertyName=$true,
               ValueFromPipeLine=$true)]
    [string]$deviceName=&quot;&quot;,
    [Parameter(Mandatory=$true)]
    [string]$Name,
    [Parameter(Mandatory=$true)]
    [string]$Value,
    [Parameter(Mandatory=$false)]
    [boolean]$Overwrite=$true
  )
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin mcli* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    $Name = $Name.toLower()
    foreach($device in $deviceName)
    {
      $devicePersonality = (Get-PVSDevicePersonality -DeviceName $device).devicePersonality
      $newPersonality = &quot;&quot;
      foreach($nvpair in $devicePersonality)
      {
        if(-not $nvpair.tolower().startswith(&quot;&quot;&quot;name=$Name&quot;&quot;&quot;))
        {
          if($newPersonality.Length -gt 0)
          {
            $newPersonality += &quot;,&quot;
          }
          $newPersonality += $nvpair
        }
        elseif($nvpair.tolower().startswith(&quot;&quot;&quot;name=$Name&quot;&quot;&quot;) -and (-not $Overwrite))
        {
          Get-PVSDevicePersonality -DeviceName $device
          return
        }
      }
    }
    if($newPersonality.Length -gt 0)
    {
      $newPersonality += &quot;,&quot;
    }
    $newPersonality += &quot;&quot;&quot;name=$Name&quot;&quot;,&quot;&quot;value=$Value&quot;&quot;&quot;
    $cmd = &quot;mcli-setlist -t devicepersonality -p &quot;&quot;deviceName=$device&quot;&quot; -r $newPersonality&quot;
    $results = Invoke-Expression -Command $cmd
    Get-PVSDevicePersonality -DeviceName $device
  }
}
Function Remove-PVSDevicePersonality()
{
  param
  (
    [Parameter(Mandatory=$true,
               ValueFromPipelineByPropertyName=$true,
               ValueFromPipeLine=$true)]
    [string]$deviceName=&quot;&quot;,
    [Parameter(Mandatory=$true)]
    [string]$Name
  )
  BEGIN
  {
    #Uses Citrix MCLI Powershell snapin
    Add-PSSnapin mcli* -ErrorAction SilentlyContinue
  }
  PROCESS
  {
    $Name = $Name.toLower()
    foreach($device in $deviceName)
    {
      $devicePersonality = (Get-PVSDevicePersonality -DeviceName $device).devicePersonality
      $newPersonality = &quot;&quot;
      foreach($nvpair in $devicePersonality)
      {
        if(-not $nvpair.tolower().startswith(&quot;&quot;&quot;name=$Name&quot;&quot;&quot;))
        {
          if($newPersonality.Length -gt 0)
          {
            $newPersonality += &quot;,&quot;
          }
          $newPersonality += $nvpair
        }
      }
    }
    if($newPersonality.Length -gt 0)
    {
      $cmd = &quot;mcli-setlist -t devicepersonality -p &quot;&quot;deviceName=$device&quot;&quot; -r $newPersonality&quot;
      $results = Invoke-Expression -Command $cmd
    }
    else
    {
      $cmd = &quot;mcli-setlist -t devicepersonality -p &quot;&quot;deviceName=$device&quot;&quot;&quot;
      $results = Invoke-Expression -Command $cmd
    }
    Get-PVSDevicePersonality -DeviceName $device
  }
}
Function New-PVSGuid()
{
  return ([guid]::NewGuid()).ToString().Replace(&quot;-&quot;,&quot;&quot;).ToUpper()
}
</pre>
<p>Save the custom Powershell module as PVSTools.psm1.</p>
	<video id="wp_mep_4" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Save-PVSTools-DevicePersonality.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Save-PVSTools-DevicePersonality.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_4').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Import the Powershell module.</p>
	<video id="wp_mep_5" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Import-Module-PVSTools.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Import-Module-PVSTools.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_5').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Use the Powershell module to assign a random “hwid” to target devices.</p>
<pre class="brush: powershell; title: ; notranslate">
Get-PVSDevice | % {Add-PVSDevicePersonality -deviceName $_.deviceName -Name &quot;hwid&quot; -Value (New-PVSGuid)}
</pre>
	<video id="wp_mep_6" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Add-PVSDevicePersonality.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Add-PVSDevicePersonality.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_6').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

<p>Or use the Powershell module to remove the hwid.</p>
<pre class="brush: powershell; title: ; notranslate">
Get-PVSDevice | Remove-PVSDevicePersonality -Name &quot;hwid&quot;
</pre>
	<video id="wp_mep_7" src="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Remove-PVSDevicePersonality.mp4"  width="640" height="360"  controls="controls" preload="none"  >
		
		
		
		
		
		
		
		<object width="640" height="360" type="application/x-shockwave-flash" data="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf">
			<param name="movie" value="http://www.ctxfarmer.com/wp-content/plugins/media-element-html5-video-and-audio-player/mediaelement/flashmediaelement.swf" />
			<param name="flashvars" value="controls=true&amp;file=http://www.ctxfarmer.com/wp-content/uploads/2011/07/Remove-PVSDevicePersonality.mp4" />			
		</object>		
	</video>
<script type="text/javascript">
jQuery(document).ready(function($) {
	$('#wp_mep_7').mediaelementplayer({
		m:1
		
		,features: ['playpause','current','progress','duration','volume','tracks','fullscreen']
		
	});
});
</script>

]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/citrix-provisioning-server-using-powershell-to-add-and-remove-device-personality-strings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Install-Citrix-Provisioning-Server-Powershell-Snapin.mp4" length="3083025" type="video/mp4" />
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Save-PVSTools-DevicePersonality.mp4" length="1375022" type="video/mp4" />
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Import-Module-PVSTools.mp4" length="711110" type="video/mp4" />
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Add-PVSDevicePersonality.mp4" length="1275781" type="video/mp4" />
<enclosure url="http://www.ctxfarmer.com/wp-content/uploads/2011/07/Remove-PVSDevicePersonality.mp4" length="359532" type="video/mp4" />
		</item>
		<item>
		<title>Adobe Customization Wizard</title>
		<link>http://www.ctxfarmer.com/adobe-customization-wizard/</link>
		<comments>http://www.ctxfarmer.com/adobe-customization-wizard/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 21:56:43 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[Adobe]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=337</guid>
		<description><![CDATA[The Adobe Customization Wizard can be used to disable annoying &#8220;features&#8221; included with Adobe Reader. Key features: Optimize the behavior of the installer by including silent installation, preserialization, multilingual, and custom setup choices Remove previous versions of Acrobat and Reader Suppress the EULA, registration prompts, and the Getting Started window Customize key application preferences — [...]]]></description>
			<content:encoded><![CDATA[<p>The Adobe Customization Wizard can be used to disable annoying &#8220;features&#8221; included with Adobe Reader.<span id="more-337"></span></p>
<p><em><strong>Key features:</strong><br />
Optimize the behavior of the installer by including silent installation, preserialization, multilingual, and custom setup choices<br />
Remove previous versions of Acrobat and Reader<br />
Suppress the EULA, registration prompts, and the Getting Started window<br />
Customize key application preferences — turn off automatic updates, add and set default job options, and customize collaboration and security settings<br />
Remove shortcuts from the desktop and the Start menu<br />
Edit each Adobe Acrobat application&#8217;s registry and installer tables<br />
Customize file attachment handling within PDF files, including specifying which file types you want to block<br />
Add or edit files that will be installed, including customized JavaScript or plug-ins<br />
Preconfigure Acrobat Connect and disable it<br />
Preconfigure and lock Enhanced Security settings<br />
Deploy custom Portfolio navigators<br />
Add or remove custom redaction code sets<br />
</em></p>
<p><a href="http://www.adobe.com/support/downloads/detail.jsp?ftpID=3993">http://www.adobe.com/support/downloads/detail.jsp?ftpID=3993</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/adobe-customization-wizard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Citrix Releases Provisioning Services 6.0 Beta</title>
		<link>http://www.ctxfarmer.com/citrix-release-provisioning-service-6-0-beta/</link>
		<comments>http://www.ctxfarmer.com/citrix-release-provisioning-service-6-0-beta/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 20:24:34 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Provisioning Server]]></category>
		<category><![CDATA[Citrix Provisioning Server]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=334</guid>
		<description><![CDATA[Citrix Provisioning Services™ uses streaming technology to dynamically deliver server workloads and desktop images on demand to any physical or virtual machine, reducing IT capital and operational costs while increasing business agility. Provisioning Services 6.0 adds new features that enhance your ability to manage and deploy shared vDisk images.]]></description>
			<content:encoded><![CDATA[<p><em>Citrix Provisioning Services™ uses streaming technology to dynamically deliver server workloads and desktop images on demand to any physical or virtual machine, reducing IT capital and operational costs while increasing business agility.</p>
<p> Provisioning Services 6.0 adds new features that enhance your ability to manage and deploy shared vDisk images.<br />
</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/citrix-release-provisioning-service-6-0-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Please wait for the Local Session Manager</title>
		<link>http://www.ctxfarmer.com/please-wait-for-the-local-session-manager/</link>
		<comments>http://www.ctxfarmer.com/please-wait-for-the-local-session-manager/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 16:56:36 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Windows Server 2008 R2]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Citrix XenApp]]></category>
		<category><![CDATA[Local Session Manager]]></category>
		<category><![CDATA[Slow logon]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=332</guid>
		<description><![CDATA[If you&#8217;re using mandatory profiles and you&#8217;re stuck at &#8220;Please wait for the Local Session Manager&#8221; for about 2 minutes during logon&#8230; Try deleting the &#8220;Local&#8221; and &#8220;LocalLow&#8221; directories in the mandatory profile&#8217;s appdata folder.]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re using mandatory profiles and you&#8217;re stuck at &#8220;Please wait for the Local Session Manager&#8221; for about 2 minutes during logon&#8230;</p>
<p>Try deleting the &#8220;Local&#8221; and &#8220;LocalLow&#8221; directories in the mandatory profile&#8217;s appdata folder.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/please-wait-for-the-local-session-manager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XenServer 5.6 SP2 resolves Realtek RTL8111/8168B issues</title>
		<link>http://www.ctxfarmer.com/xenserver-5-6-sp2-resolves-realtek-rtl81118168b-issues/</link>
		<comments>http://www.ctxfarmer.com/xenserver-5-6-sp2-resolves-realtek-rtl81118168b-issues/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 18:48:49 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[XenServer]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=330</guid>
		<description><![CDATA[I installed XenServer 5.6 SP2 today in my lab.&#160; No problems!&#160; Looks like Citrix addressed the Realtek RTL8111/8168B issues from XenServer FP1.]]></description>
			<content:encoded><![CDATA[<p>I installed XenServer 5.6 SP2 today in my lab.&#160; No problems!&#160; Looks like Citrix addressed the Realtek RTL8111/8168B issues from XenServer FP1.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/xenserver-5-6-sp2-resolves-realtek-rtl81118168b-issues/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disable Disconnected Network Adapters with Powershell</title>
		<link>http://www.ctxfarmer.com/disable-disconnected-network-adapters-with-powershell/</link>
		<comments>http://www.ctxfarmer.com/disable-disconnected-network-adapters-with-powershell/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 16:51:33 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Windows Server 2008 R2]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=329</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<pre class="brush: powershell; title: ; notranslate">
Get-WmiObject Win32_NetworkAdapter | Where-Object {$_.NetConnectionStatus -eq 7} | % {$_.Disable()}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/disable-disconnected-network-adapters-with-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&quot;AWT-EventQueue-0&quot; java.lang.IllegalArgumentException: Invalid delay: -1</title>
		<link>http://www.ctxfarmer.com/awt-eventqueue-0-java-lang-illegalargumentexception-invalid-delay-1/</link>
		<comments>http://www.ctxfarmer.com/awt-eventqueue-0-java-lang-illegalargumentexception-invalid-delay-1/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 22:50:30 +0000</pubDate>
		<dc:creator>Phil Lindsey</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[XenDesktop]]></category>
		<category><![CDATA[cursor blink rate]]></category>
		<category><![CDATA[Veritas Cluster Manager]]></category>

		<guid isPermaLink="false">http://www.ctxfarmer.com/?p=328</guid>
		<description><![CDATA[I disable the cursor blink rate (HKCU\Control Panel\Desktop\CursorBlinkRate) for XenApp and XenDesktop users.&#160; It’s usually part of the mandatory profile and I would probably consider it a best practice for virtual desktop environments. I’ve never had a problem with setting the registry value to “–1” until today.&#160; Several virtual desktop customers reported they could not [...]]]></description>
			<content:encoded><![CDATA[<p>I disable the cursor blink rate (HKCU\Control Panel\Desktop\CursorBlinkRate) for XenApp and XenDesktop users.&#160; It’s usually part of the mandatory profile and I would probably consider it a best practice for virtual desktop environments.</p>
<p>I’ve never had a problem with setting the registry value to “–1” until today.&#160; <span id="more-328"></span>Several virtual desktop customers reported they could not connect to new clusters using “Veritas Cluster Manager – Java Console”.&#160; The customers explained that the application would launch but nothing would happen after clicking File, New Cluster.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image_thumb.png" width="244" height="135" /></a></p>
<p>I found you can get additional logging if you launch ClusterManager.exe from the command line and “redirect” the output.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image1.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image_thumb1.png" width="244" height="124" /></a></p>
<p>I reviewed the log file and found an error message with an illegal argument exception.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image2.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image_thumb2.png" width="244" height="170" /></a></p>
<p>A quick search on Symantec’s website and I found an article that documented the exact problem users were reporting.</p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image3.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image_thumb3.png" width="243" height="244" /></a></p>
<p><em>The article says to set the blink rate to “none” but I found this does not fix the problem.&#160; I manually set the blink rate to 1200 with AppSense EM at user logon and the application now works.</em></p>
<p><a href="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image4.png"><img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://www.ctxfarmer.com/wp-content/uploads/2011/06/image_thumb4.png" width="244" height="176" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ctxfarmer.com/awt-eventqueue-0-java-lang-illegalargumentexception-invalid-delay-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

