<?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>Michel Stevelmans</title>
	<atom:link href="http://www.michelstevelmans.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.michelstevelmans.com</link>
	<description></description>
	<lastBuildDate>Wed, 09 May 2012 09:05:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Farm Nanny, a Citrix XenApp farm monitor application</title>
		<link>http://www.michelstevelmans.com/farm-nanny-citrix-xenapp-farm-monitor-application/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=farm-nanny-citrix-xenapp-farm-monitor-application</link>
		<comments>http://www.michelstevelmans.com/farm-nanny-citrix-xenapp-farm-monitor-application/#comments</comments>
		<pubDate>Tue, 01 May 2012 06:35:12 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Active]]></category>
		<category><![CDATA[Address]]></category>
		<category><![CDATA[Alternative]]></category>
		<category><![CDATA[Application]]></category>
		<category><![CDATA[available]]></category>
		<category><![CDATA[Check]]></category>
		<category><![CDATA[Connected]]></category>
		<category><![CDATA[Counter]]></category>
		<category><![CDATA[Disabled]]></category>
		<category><![CDATA[Disconnected]]></category>
		<category><![CDATA[Disk]]></category>
		<category><![CDATA[Diskspace]]></category>
		<category><![CDATA[Enabled]]></category>
		<category><![CDATA[Evaluator]]></category>
		<category><![CDATA[Farm]]></category>
		<category><![CDATA[Feature]]></category>
		<category><![CDATA[Group]]></category>
		<category><![CDATA[Health]]></category>
		<category><![CDATA[ICA]]></category>
		<category><![CDATA[IP]]></category>
		<category><![CDATA[Load]]></category>
		<category><![CDATA[logon]]></category>
		<category><![CDATA[Manager]]></category>
		<category><![CDATA[Memory]]></category>
		<category><![CDATA[Monitor]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Nanny]]></category>
		<category><![CDATA[Overview]]></category>
		<category><![CDATA[Real]]></category>
		<category><![CDATA[Resource]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Session]]></category>
		<category><![CDATA[Shooting]]></category>
		<category><![CDATA[Space]]></category>
		<category><![CDATA[Status]]></category>
		<category><![CDATA[Time]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Trouble]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Uptime]]></category>
		<category><![CDATA[User]]></category>
		<category><![CDATA[Worker]]></category>
		<category><![CDATA[Zone]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=870</guid>
		<description><![CDATA[Although Citrix EdgeSight is completely packed with features, it is a little top-heavy and personally I still miss the good old Citrix resource manager because it was a quick and easy way to get an overview of what&#8217;s going on with your farm and servers. Sure there are a lot of PowerShell scripts to be <a href='http://www.michelstevelmans.com/farm-nanny-citrix-xenapp-farm-monitor-application/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>Although Citrix EdgeSight is completely packed with features, it is a little top-heavy and personally I still miss the good old Citrix resource manager because it was a quick and easy way to get an overview of what&#8217;s going on with your farm and servers.<br />
Sure there are a lot of PowerShell scripts to be found which give you an overview of your farm, but those scripts are just snap-shots of your environment.<br />
What you really need is something that monitors your Citrix XenApp farm in real-time</p>
<p>After some digging around in the Citrix XenApp SDK, I decided to make my own Citrix XenApp farm monitor: Farm Nanny!</p>
<p>Farm Nanny is a Citrix XenApp farm monitoring application for XenApp 6 and XenApp 6.5 which will help you with troubleshooting, health checks and resource monitoring.<span id="more-870"></span></p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/05/Farm-Nanny-1.1-screenshot1.gif"><img class="aligncenter size-medium wp-image-954" title="Farm Nanny 1.1 screenshot" src="http://www.michelstevelmans.com/wp-content/uploads/2012/05/Farm-Nanny-1.1-screenshot1-300x224.gif" alt="" width="300" height="224" /></a></p>
<p>The following features are currently included:</p>
<ul>
<li>Citrix XenApp farm servers &amp; status</li>
<li>Session counter</li>
<li>Load by server</li>
<li>Active ICA sessions by server</li>
<li>Active ICA sessions by farm</li>
<li>Disconnected ICA sessions by server</li>
<li>Disconnected ICA sessions by farm</li>
<li>Logons enabled / disabled by server</li>
<li>Load evaluator by server</li>
<li>Zone by server</li>
<li>Worker Group by server</li>
<li>Sortable column view</li>
<li>IP addresses by server</li>
<li>Available memory by server</li>
<li>Available diskspace by server</li>
<li>Server uptime</li>
</ul>
<p>.NET Framework 3.5 is required, but if you are running XenApp 6 or XenApp 6.5, you are also running Windows 2008 R2 which comes the correct .NET Framework by default.</p>
<p>I need your help to make Farm Nanny even better, so I would really appreciate your opinions, suggestions, error reports and feature requests.</p>
<p>Farm Nanny is free, but if you like Farm Nanny please consider to <a title="Make a donation" href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&amp;business=michel%2estevelmans%40gmail%2ecom&amp;lc=GB&amp;item_name=Michel%20Stevelmans&amp;currency_code=EUR&amp;bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted" target="_blank"><img src="https://www.paypal.com/en_US/i/btn/x-click-but21.gif" alt="" /></a></p>
<p>Download Farm Nanny 1.11 here: <a href="http://www.michelstevelmans.com/wp-content/plugins/download-monitor/download.php?id=2">Farm Nanny</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/farm-nanny-citrix-xenapp-farm-monitor-application/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Installing Symantec Endpoint Protection in a Citrix Provisioning Services vDisk using PowerShell</title>
		<link>http://www.michelstevelmans.com/installing-symantec-endpoint-protection-citrix-provisioning-services-vdisk-powershell/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=installing-symantec-endpoint-protection-citrix-provisioning-services-vdisk-powershell</link>
		<comments>http://www.michelstevelmans.com/installing-symantec-endpoint-protection-citrix-provisioning-services-vdisk-powershell/#comments</comments>
		<pubDate>Thu, 05 Apr 2012 08:22:09 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Provisioning]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[XenDesktop]]></category>
		<category><![CDATA[Anti]]></category>
		<category><![CDATA[Duplicate]]></category>
		<category><![CDATA[Endpoint]]></category>
		<category><![CDATA[ID]]></category>
		<category><![CDATA[Install]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[Protection]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[SEP]]></category>
		<category><![CDATA[Sephwid]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Symantec]]></category>
		<category><![CDATA[VDI]]></category>
		<category><![CDATA[vDisk]]></category>
		<category><![CDATA[Virus]]></category>
		<category><![CDATA[Virusscanner]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=839</guid>
		<description><![CDATA[If you install Symantec Enterprise Protection in a Citrix Provisioning Services vDisk in standard mode, you will notice that your clients will create duplicate entries in the Symantec Endpoint Protection Manager at every reboot. Just like most other centrally managed anti-virus products (see my other post on Trend Micro OfficeScan), Symantec uses hardware id&#8217;s to <a href='http://www.michelstevelmans.com/installing-symantec-endpoint-protection-citrix-provisioning-services-vdisk-powershell/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>If you install Symantec Enterprise Protection in a Citrix Provisioning Services vDisk in standard mode, you will notice that your clients will create duplicate entries in the Symantec Endpoint Protection Manager at every reboot.<br />
Just like most other centrally managed anti-virus products (see my <a title="Installing Trend Micro OfficeScan in a vDisk" href="http://www.michelstevelmans.com/installing-trend-micro-officescan-vdisk/" target="_blank">other</a> post on Trend Micro OfficeScan), Symantec uses hardware id&#8217;s to uniquely identify clients and this causes issues with read-only vDisks.<span id="more-839"></span></p>
<p>Symantec provides a knowledge base article in which they go into detail on the problem and propose a workaround that creates unique id&#8217;s for every client.<br />
You can find more information here: <a href="http://www.symantec.com/docs/TECH123419" target="_blank">http://www.symantec.com/docs/TECH123419</a></p>
<p>The workaround and batch file that Symantec uses is a &#8220;one size fits all&#8221; solution, meaning it will work for SEP 11 and 12 and for 32 and 64 bits.<br />
The environment I was implementing this for uses Windows 2008 R2 and SEP 11 only and I like to standardize all my scripts to PowerShell, so I extracted only the actions I needed and translated them to PowerShell.</p>
<p>A summary of the steps needed to be taken first (the Symantec article outlines them in more detail):</p>
<p>- Disable tamper protection (very important!)<br />
- Stop the Symantec Management Client service by navigating to the Symantec Endpoint Protection installation directory and use the command: <code>smc -stop</code><br />
- Set the Symantec Management Client service to start manually in the registry: <code>HKLM\SYSTEM\CurrentControlSet\services\SmcService\Start=3</code></p>
<p>After these changes the Symantec Management Client service can&#8217;t contact the Symantec Endpoint Protection Manager automatically anymore.</p>
<p>The following PowerShell script must be configured to run at boottime to change the hardware id and manually start the Symantec Management Client service.</p>
<pre># Change Symantec Endpoint Protection Hardware ID
# Created by Michel Stevelmans - http://www.michelstevelmans.com

# Delete sephwid.xml
Remove-Item "C:\Program Files (x86)\Common Files\Symantec Shared\HWID\sephwid.xml"

# Delete registry entries
reg delete "HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC\SYLINK\SyLink" /v HardwareID /f /reg:64
reg delete "HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC\SYLINK\SyLink" /v HostGUID /f /reg:64

# Get the MAC address of the first NIC
$Nics = Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "IpEnabled = TRUE"
foreach ($Nic in $Nics)
    {
    $Mac = $Nic.MacAddress
    Break
    }

# Remove colons from MAC Address
$Hwid = $Mac.Replace(":", "")

# Add new HardwareID registry entry
reg add "HKLM\SOFTWARE\Symantec\Symantec Endpoint Protection\SMC\SYLINK\SyLink" /v HardwareID /d "00000000000000000000$Hwid" /f /reg:64

# Start Symantec Management Client
Start-Service SmcService</pre>
<p>Like I mentioned earlier: This script is for 64-bit with SEP 11, but with the help of the original Symantec article it is very easy to make this work for SEP 12 or 32-bits.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/installing-symantec-endpoint-protection-citrix-provisioning-services-vdisk-powershell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multiple languages, regional options and keyboard layouts with Citrix and AppSense</title>
		<link>http://www.michelstevelmans.com/multiple-languages-regional-options-keyboard-layouts-citrix-appsense/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=multiple-languages-regional-options-keyboard-layouts-citrix-appsense</link>
		<comments>http://www.michelstevelmans.com/multiple-languages-regional-options-keyboard-layouts-citrix-appsense/#comments</comments>
		<pubDate>Mon, 30 Jan 2012 10:53:01 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[AppSense]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[Active]]></category>
		<category><![CDATA[AD]]></category>
		<category><![CDATA[Bar]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[Condition]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Directory]]></category>
		<category><![CDATA[Display]]></category>
		<category><![CDATA[Environment]]></category>
		<category><![CDATA[Geographical]]></category>
		<category><![CDATA[GPO]]></category>
		<category><![CDATA[Group]]></category>
		<category><![CDATA[Hide]]></category>
		<category><![CDATA[Ignore]]></category>
		<category><![CDATA[Input]]></category>
		<category><![CDATA[Keyboard]]></category>
		<category><![CDATA[Language]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[Locale]]></category>
		<category><![CDATA[Location]]></category>
		<category><![CDATA[Manager]]></category>
		<category><![CDATA[Membership]]></category>
		<category><![CDATA[MUI]]></category>
		<category><![CDATA[Multiple]]></category>
		<category><![CDATA[Node]]></category>
		<category><![CDATA[Option]]></category>
		<category><![CDATA[Pack]]></category>
		<category><![CDATA[Personalization]]></category>
		<category><![CDATA[Policy]]></category>
		<category><![CDATA[Provisioning]]></category>
		<category><![CDATA[R2]]></category>
		<category><![CDATA[RDP]]></category>
		<category><![CDATA[RDS]]></category>
		<category><![CDATA[Regional]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Remote]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Set]]></category>
		<category><![CDATA[Setting]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[vDisk]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=781</guid>
		<description><![CDATA[Lately I&#8217;ve been implementing a new Citrix XenApp 6.5 environment for a large international customer. Because the environment will be used by people from all over the world, the customer requested to have multiple language packs installed and all users should get their correct language settings, regional options and keyboards at logon according to their <a href='http://www.michelstevelmans.com/multiple-languages-regional-options-keyboard-layouts-citrix-appsense/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>Lately I&#8217;ve been implementing a new Citrix XenApp 6.5 environment for a large international customer.<br />
Because the environment will be used by people from all over the world, the customer requested to have multiple language packs installed and all users should get their correct language settings, regional options and keyboards at logon according to their active directory security group memberships.<br />
I remember from back in the days on windows 2003 this could be a nightmare, but on windows 2008 R2 with a few registry keys in AppSense and some GPO&#8217;s it&#8217;s quite easy to get this right.<span id="more-781"></span></p>
<p>First install all your required language packs on your XenApp or RDS server or if you&#8217;re using Citrix Provisioning, install them in your vDisk.</p>
<p><strong>1 . Security groups</strong></p>
<p>Create a separate active directory security group for each language. I&#8217;m going to use these groups as conditions in AppSense environment manager and for security filtering on the active directory GPO&#8217;s.<br />
So for example create a security group called &#8220;Japanese language&#8221; and add all Japanese users to this group.</p>
<p><strong>2. Ignore remote keyboard</strong></p>
<p>When a RDP client connects to a remote desktop server, the client&#8217;s input language and keyboard settings are detected, which will obviously cause trouble if you want to push language and keyboard settings for your users.<br />
To disable this feature on your remote desktop or Citrix XenApp server, add a DWORD value called <code>IgnoreRemoteKeyboardLayout</code> with a value of 1 under <code>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout</code>.</p>
<p><strong>3. Regional options</strong></p>
<p>Create a separate GPO for all your languages, remove the &#8220;Authenticated Users&#8221; from the security filtering and add your corresponding active directory security group to each GPO.<br />
Edit each GPO with the regional options you require and make sure to hit F5 on all tabs so that the dotted red line turns into a green line (only settings which have a green line underneath are applied).</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/regional-options.jpg"><img class="aligncenter size-medium wp-image-791" title="regional options" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/regional-options-300x196.jpg" alt="" width="300" height="196" /></a></p>
<p><strong>4. Display language</strong></p>
<p>Create a node in your AppSense environment manager policy configuration and add the active directory security groups as a user group conditions.<br />
The registry settings for the display language are located under <code>HKEY_CURRENT_USER\Control Panel\Desktop</code>.<br />
Change the language to your required language an export these two values to a reg file: <code>PreferredUILanguages</code> and <code>PreferredUILanguagesPending</code>.<br />
So if you created an AppSense environment manager user group condition for the Japanese active directory security group, import the Japanese reg file underneath that condition.</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/AppSense-diplay-language.jpg"><img class="aligncenter size-medium wp-image-798" title="AppSense diplay language" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/AppSense-diplay-language-300x153.jpg" alt="" width="300" height="153" /></a></p>
<p><strong>5. Keyboard layout</strong></p>
<p>The preferred keyboard layout registry key is located under <code>HKEY_CURRENT_USER\Keyboard Layout\Preload</code>.<br />
The string value named <code>1</code> is the one you need. The value will be the keyboard code for your country.<br />
So for a Japanese keyboard we need a string valued named <code>1</code> with a value of <code>00000411</code><br />
For a complete list of keyboard codes, refer to <a href="http://support.microsoft.com/kb/262283" target="_blank">http://support.microsoft.com/kb/262283</a></p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/keyboard-settings.jpg"><img class="aligncenter size-medium wp-image-804" title="keyboard settings" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/keyboard-settings-300x154.jpg" alt="" width="300" height="154" /></a></p>
<p><strong>6. Geographical location</strong></p>
<p>The geographical location registry key is located under <code>HKEY_CURRENT_USER\Control Panel\International\Geo</code>.<br />
The value of the string value called <code>Nation</code> determines the user&#8217;s geographical location.<br />
For a complete list of geographical location values, refer to <a href="http://msdn.microsoft.com/en-us/library/ms912039.aspx" target="_blank">http://msdn.microsoft.com/en-us/library/ms912039.aspx</a><br />
Import this registry key in your AppSense environment manager policy configuration.</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/location-settings.jpg"><img class="aligncenter size-medium wp-image-807" title="location settings" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/location-settings-300x153.jpg" alt="" width="300" height="153" /></a></p>
<p><strong>7. Hide the language bar</strong></p>
<p>If you are going to push all these language en regional settings to your users, you might as well hide the language bar.<br />
To do this, create a DWORD value named <code>ShowStatus</code> with a value of <code>3</code> under<br />
<code>HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar</code> in your AppSense environment manager policy configuration.</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/hide-language-bar.jpg"><img class="aligncenter size-medium wp-image-810" title="hide language bar" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/hide-language-bar-300x154.jpg" alt="" width="300" height="154" /></a></p>
<p><strong>8. AppSense personalization desktop settings</strong></p>
<p>Now that we have all settings in place, we have to tweak AppSense personalization.<br />
When you would remove a user from the Japanese security group and add him to another language security group after he has already logged in at least once, you will see some unexpected behavior.<br />
The desktop settings from AppSense personalization will persist some of his old Japanese settings and the user will now have a mixture of language settings.<br />
Connect to your AppSense personalization server, go to desktop settings and uncheck the following: Keyboard, language and locale.</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2012/01/desktop-settings.jpg"><img class="aligncenter size-medium wp-image-813" title="desktop settings" src="http://www.michelstevelmans.com/wp-content/uploads/2012/01/desktop-settings-229x300.jpg" alt="" width="229" height="300" /></a></p>
<p>Everything is now configured properly and ready to go!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/multiple-languages-regional-options-keyboard-layouts-citrix-appsense/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Change the text size in a remote desktop session</title>
		<link>http://www.michelstevelmans.com/change-text-size-remote-desktop-session/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=change-text-size-remote-desktop-session</link>
		<comments>http://www.michelstevelmans.com/change-text-size-remote-desktop-session/#comments</comments>
		<pubDate>Wed, 21 Dec 2011 10:11:47 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[XenApp]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Display]]></category>
		<category><![CDATA[DPI]]></category>
		<category><![CDATA[Font]]></category>
		<category><![CDATA[Log]]></category>
		<category><![CDATA[Logoff]]></category>
		<category><![CDATA[RDS]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Remote]]></category>
		<category><![CDATA[Resolution]]></category>
		<category><![CDATA[Screen]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[Session]]></category>
		<category><![CDATA[Setting]]></category>
		<category><![CDATA[Size]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[User]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=759</guid>
		<description><![CDATA[When connected to a Windows 2008 R2 remote desktop session, you cannot change the size of the text on your screen (font size / DPI settings). If you go to &#8220;Control Panel&#8221; &#8211; &#8220;Display&#8221; you see the message: &#8220;the display settings can&#8217;t be changed from a remote session.&#8221;. Especially for users with large screens and <a href='http://www.michelstevelmans.com/change-text-size-remote-desktop-session/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>When connected to a Windows 2008 R2 remote desktop session, you cannot change the size of the text on your screen (font size / DPI settings).<br />
If you go to &#8220;Control Panel&#8221; &#8211; &#8220;Display&#8221; you see the message: &#8220;the display settings can&#8217;t be changed from a remote session.&#8221;.</p>
<p>Especially for users with large screens and large resolutions, this can be a real problem.<span id="more-759"></span></p>
<p>If you would change the text size settings when not connected to a remote desktop session, windows changes the corresponding values in the registry under <code>HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics</code>.</p>
<p>I created a simple tool which lets users change their text size in a remote desktop session.<br />
When starting the tool, users will be presented the following options (which are the same as the display settings in control panel):</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2011/12/screenshot_ChangeTextSize.jpg"><img class="aligncenter size-medium wp-image-835" title="screenshot_ChangeTextSize" src="http://www.michelstevelmans.com/wp-content/uploads/2011/12/screenshot_ChangeTextSize-300x186.jpg" alt="" width="300" height="186" /></a></p>
<p>After selecting the text size, the tool will change the corresponding values in the registry and the user will be prompted to log off. After logging back in, the new text size will be applied.</p>
<p>The tool can be downloaded here: <a href="http://www.michelstevelmans.com/wp-content/plugins/download-monitor/download.php?id=1">Change Text Size</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/change-text-size-remote-desktop-session/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Personalizing the default printer when using Citrix session printers and AppSense Personalization</title>
		<link>http://www.michelstevelmans.com/personalizing-default-printer-citrix-session-printers-appsense-personalization/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=personalizing-default-printer-citrix-session-printers-appsense-personalization</link>
		<comments>http://www.michelstevelmans.com/personalizing-default-printer-citrix-session-printers-appsense-personalization/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 11:24:49 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[AppSense]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[Printing]]></category>
		<category><![CDATA[Default]]></category>
		<category><![CDATA[Logoff]]></category>
		<category><![CDATA[logon]]></category>
		<category><![CDATA[Personalization]]></category>
		<category><![CDATA[Personalize]]></category>
		<category><![CDATA[Printer]]></category>
		<category><![CDATA[Profile]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Session]]></category>
		<category><![CDATA[Setting]]></category>
		<category><![CDATA[XenApp]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=724</guid>
		<description><![CDATA[Personalizing Citrix session printers for your users will not work out of the box with AppSense Personalization. As described in http://support.citrix.com/article/CTX107415, session printers are deleted at logoff and therefore AppSense Personalization will not capture the user&#8217;s default printer. To personalize the user&#8217;s default printer with AppSense Personalization you have to apply a small workaround. First, <a href='http://www.michelstevelmans.com/personalizing-default-printer-citrix-session-printers-appsense-personalization/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>Personalizing Citrix session printers for your users will not work out of the box with AppSense Personalization.<br />
As described in <a href="http://support.citrix.com/article/CTX107415" target="_blank">http://support.citrix.com/article/CTX107415</a>, session printers are deleted at logoff and therefore AppSense Personalization will not capture the user&#8217;s default printer.</p>
<p>To personalize the user&#8217;s default printer with AppSense Personalization you have to apply a small workaround.<span id="more-724"></span></p>
<p>First, make sure the registry key which contains the default printer is added to AppSense session data (or desktop settings if you have an older AppSense version).<br />
Add the following key:<br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows</code></p>
<p>Next, we have to make sure printers are not deleted when the user logs off. This can be accomplished by adding a registry key, depending on your version of XenApp.</p>
<p>For XenApp 5 and below:<br />
Add a DWORD value called DefaultPrnFlags with a value of  0&#215;00800000 under HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Print.<br />
Refer to <a href="http://support.citrix.com/article/CTX107059" target="_blank">http://support.citrix.com/article/CTX107059</a> (page 248) for more details.</p>
<p>For XenApp 6 and 6.5:<br />
Add a DWORD value called DisableNetworkPrinterDisconnect with a value of 1 under HKEY_LOCAL_MACHINE\Software\Citrix\Ica\PrintingSettings.<br />
Refer to <a href="http://support.citrix.com/article/CTX124885" target="_blank">http://support.citrix.com/article/CTX124885</a> for more details.</p>
<p>When a user logs off, the Citrix session printers are not deleted and AppSense Personalization will write the registry information to the personalization database.</p>
<p>If you need to personalize additional printer settings (besides only the user&#8217;s default printer), you need to add the following registry keys to personalization:<br />
<code>HKEY_CURRENT_USER\Printers<br />
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Devices<br />
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/personalizing-default-printer-citrix-session-printers-appsense-personalization/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>AppSense Personalization additional registry keys overview</title>
		<link>http://www.michelstevelmans.com/appsense-personalization-additional-registry-keys-overview/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=appsense-personalization-additional-registry-keys-overview</link>
		<comments>http://www.michelstevelmans.com/appsense-personalization-additional-registry-keys-overview/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 07:46:18 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[AppSense]]></category>
		<category><![CDATA[Additional]]></category>
		<category><![CDATA[Autoplay]]></category>
		<category><![CDATA[Clocks]]></category>
		<category><![CDATA[Control]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Document]]></category>
		<category><![CDATA[Environment]]></category>
		<category><![CDATA[Explorer]]></category>
		<category><![CDATA[Folder]]></category>
		<category><![CDATA[Icon]]></category>
		<category><![CDATA[Item]]></category>
		<category><![CDATA[Key]]></category>
		<category><![CDATA[Log]]></category>
		<category><![CDATA[Logoff]]></category>
		<category><![CDATA[Manager]]></category>
		<category><![CDATA[Mapping]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[Off]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[Pane]]></category>
		<category><![CDATA[Panel]]></category>
		<category><![CDATA[Persist]]></category>
		<category><![CDATA[Personalization]]></category>
		<category><![CDATA[Pinned]]></category>
		<category><![CDATA[Preview]]></category>
		<category><![CDATA[Profile]]></category>
		<category><![CDATA[Programs]]></category>
		<category><![CDATA[Properties]]></category>
		<category><![CDATA[Recent]]></category>
		<category><![CDATA[Recently]]></category>
		<category><![CDATA[Registry]]></category>
		<category><![CDATA[Setting]]></category>
		<category><![CDATA[Size]]></category>
		<category><![CDATA[Taskbar]]></category>
		<category><![CDATA[Toolbar]]></category>
		<category><![CDATA[Used]]></category>
		<category><![CDATA[User]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=642</guid>
		<description><![CDATA[Although AppSense Personalization works almost &#8220;out of the box&#8221;, there are still a couple of user settings which do not persist after a log off. I revisited my old list of registry keys and hiving actions and tested them out with AppSense Environment Manager 8.2 on a Windows 7 client machine. The list below is <a href='http://www.michelstevelmans.com/appsense-personalization-additional-registry-keys-overview/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>Although AppSense Personalization works almost &#8220;out of the box&#8221;, there are still a couple of user settings which do not persist after a log off.</p>
<p>I revisited my old list of registry keys and hiving actions and tested them out with AppSense Environment Manager 8.2 on a Windows 7 client machine.<br />
The list below is an overview of the settings that did not persist. Add the registry keys you need to your session data (or desktop settings, if you have an older version of AppSense) to make the setting persist.<span id="more-642"></span></p>
<p><strong>Taskbar properties</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2</code></p>
<p><strong>Taskbar toolbars</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Desktop</code></p>
<p><strong>Taskbar notifications</strong><br />
<code>HKEY_CURRENT_USER\Software\Classes\Local Settings\<br />
Software\Microsoft\Windows\CurrentVersion\TrayNotify</code></p>
<p><strong>Windows explorer preview pane</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\<br />
Modules\GlobalSettings</code></p>
<p><strong>Additional clocks</strong><br />
<code>HKEY_CURRENT_USER\Control Panel\TimeDate\AdditionalClocks</code></p>
<p><strong>Control panel icon size</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel</code></p>
<p><strong>Network mappings</strong><br />
<code>HKEY_CURRENT_USER\Network</code></p>
<p><strong>Desktop icon settings</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\<br />
HideDesktopIcons\NewStartPanel</code></p>
<p><strong>Microsoft Office user information</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Office\Common\UserInfo</code></p>
<p><strong>Autoplay</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\<br />
AutoplayHandlers\EventHandlersDefaultSelection</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\<br />
AutoplayHandlers\UserChosenExecuteHandlers</code></p>
<p><strong>Recently used programs</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist</code></p>
<p><strong>Windows Explorer Folder View</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Bags</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\BagMRU</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\BagMRU</code><br />
And for 64-bit:<br />
<code>HKEY_CURRENT_USER\Software\Classes\Wow6432Node\Local Settings\<br />
Software\Microsoft\Windows\Shell\Bags</code><br />
<code>HKEY_CURRENT_USER\Software\Classes\Wow6432Node\Local Settings\<br />
Software\Microsoft\Windows\Shell\BagMRU</code></p>
<p><strong>Pinned Items</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband</code><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Startpage2</code></p>
<p>In addition to the registry keys, the actual pinned items also have to be copied (to the user home drive for example) at logon/log off.<br />
If you have AppSense Environment Manager 8.2 you can use the mirror action for the folders below. If you have an older version of Environment Manager, just use a copy action</p>
<p><code>%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu</code><br />
<code>%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar</code></p>
<p><strong>Recent documents</strong><br />
<code>HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs</code></p>
<p>In addition to the registry keys, the actual items also have to be copied (to the user home drive for example) at logon/log off.<br />
If you have AppSense Environment Manager 8.2 you can use the mirror action for the folder below. If you have have an older version of Environment Manager, just use a copy action</p>
<p><code>%AppData%\Microsoft\Windows\Recent</code></p>
<p><strong>Update 14 december 2011:<br />
</strong>Citrix Session Printers can also be personalized with a little workaround which I have described <a title="Personalizing the default printer when using Citrix session printers and AppSense Personalization" href="http://www.michelstevelmans.com/personalizing-default-printer-citrix-session-printers-appsense-personalization/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/appsense-personalization-additional-registry-keys-overview/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>PowerShell Robocopy script with e-mail notification</title>
		<link>http://www.michelstevelmans.com/powershell-robocopy-script-email-notification/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=powershell-robocopy-script-email-notification</link>
		<comments>http://www.michelstevelmans.com/powershell-robocopy-script-email-notification/#comments</comments>
		<pubDate>Fri, 25 Nov 2011 10:55:19 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Attachment]]></category>
		<category><![CDATA[Back-up]]></category>
		<category><![CDATA[Backup]]></category>
		<category><![CDATA[Clone]]></category>
		<category><![CDATA[Copy]]></category>
		<category><![CDATA[E-Mail]]></category>
		<category><![CDATA[Gmail]]></category>
		<category><![CDATA[Mail]]></category>
		<category><![CDATA[Notification]]></category>
		<category><![CDATA[Robocopy]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Send]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[Synchronize]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=629</guid>
		<description><![CDATA[I wrote this PowerShell script to synchronize two folders with robocopy (each located on another physical hard disk) so I have a backup in case one hard disk fails. The script will send the robocopy output log file as an attachment to the specified e-mail address. # PowerShell Robocopy script with e-mail notification # Created <a href='http://www.michelstevelmans.com/powershell-robocopy-script-email-notification/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>I wrote this PowerShell script to synchronize two folders with robocopy (each located on another physical hard disk) so I have a backup in case one hard disk fails.<br />
The script will send the robocopy output log file as an attachment to the specified e-mail address.<span id="more-629"></span></p>
<pre># PowerShell Robocopy script with e-mail notification
# Created by Michel Stevelmans - http://www.michelstevelmans.com

# Change these values
$SourceFolder = "C:\SourceFolder"
$DestinationFolder = "C:\DestinationFolder"
$Logfile = "C:\Robocopy.log"
$EmailFrom = "michel.stevelmans@domain.com"
$EmailTo = "michel.stevelmans@domain.com"
$EmailBody = "Robocopy completed successfully. See attached log file for details"
$EmailSubject = "Robocopy Summary"
$SMTPServer = "smtp.domain.com"
$SMTPPort = "25"

# Copy Folder with Robocopy
Robocopy $SourceFolder $DestinationFolder /E /ZB /R:1 /W:1 /PURGE /LOG:$Logfile /NP

# Send E-mail message with log file attachment
$Message = New-Object Net.Mail.MailMessage($EmailFrom, $EmailTo, $EmailSubject, $EmailBody)
$Attachment = New-Object Net.Mail.Attachment($Logfile, 'text/plain')
$Message.Attachments.Add($Attachment)
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, $SMTPPort)
$SMTPClient.Send($Message)</pre>
<p>If you want to use gmail, you have to use a different approach because gmail requires authentication, a different port and SSL.<br />
The script below will allow you to let PowerShell use gmail to send the e-mail notification.</p>
<pre># PowerShell Robocopy script with e-mail notification
# Created by Michel Stevelmans - http://www.michelstevelmans.com

# Change these values
$SourceFolder = "C:\SourceFolder"
$DestinationFolder = "C:\DestinationFolder"
$Logfile = "C:\Robocopy.log"
$EmailFrom = "michel.stevelmans@domain.com"
$EmailTo = "michel.stevelmans@domain.com"
$EmailBody = "Robocopy completed successfully. See attached log file for details"
$EmailSubject = "Robocopy Summary"
$Username = "Your.GmailUsername"
$Password = "YourGmailPassword"

# Copy Folder with Robocopy
Robocopy $SourceFolder $DestinationFolder /E /ZB /R:1 /W:1 /PURGE /LOG:$Logfile /NP

# Send E-mail message with log file attachment
$Message = New-Object Net.Mail.MailMessage($EmailFrom, $EmailTo, $EmailSubject, $EmailBody)
$Attachment = New-Object Net.Mail.Attachment($Logfile, 'text/plain')
$Message.Attachments.Add($Attachment)
$SMTPClient = New-Object Net.Mail.SmtpClient("smtp.gmail.com", 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
$SMTPClient.Send($Message)</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/powershell-robocopy-script-email-notification/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>AppSense Environment Manager Browser Interface &#8211; Personalization administration through a web browser</title>
		<link>http://www.michelstevelmans.com/appsense-environment-manager-browser-interface-personalization-administration-web-browser/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=appsense-environment-manager-browser-interface-personalization-administration-web-browser</link>
		<comments>http://www.michelstevelmans.com/appsense-environment-manager-browser-interface-personalization-administration-web-browser/#comments</comments>
		<pubDate>Mon, 21 Nov 2011 11:07:53 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[AppSense]]></category>
		<category><![CDATA[Based]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Console]]></category>
		<category><![CDATA[Delegate]]></category>
		<category><![CDATA[Delegation]]></category>
		<category><![CDATA[Environment]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[Manager]]></category>
		<category><![CDATA[Personalization]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=584</guid>
		<description><![CDATA[With the release of AppSense environment manager 8.2, AppSense introduced the AppSense environment manager browser interface. The environment manager browser interface lets you do the basic AppSense personalization administration tasks (for example application archive rollback and deletion of the application settings) through a web browser without having to install the full environment manager console. This allows <a href='http://www.michelstevelmans.com/appsense-environment-manager-browser-interface-personalization-administration-web-browser/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>With the release of AppSense environment manager 8.2, AppSense introduced the AppSense environment manager browser interface.<br />
The environment manager browser interface lets you do the basic AppSense personalization administration tasks (for example application archive rollback and deletion of the application settings) through a web browser without having to install the full environment manager console. This allows you to delegate personalization administration to your helpdesk staff because the environment manager browser interface does not have all the advanced features the full environment manager console does.</p>
<p>Let&#8217;s start with setting up the AppSense environment manager browser interface.<span id="more-584"></span></p>
<p>I chose to install the environment manager browser interface on my personalization server, so the IIS requirement was already met.<br />
Next make sure you install Microsoft .NET Framework 4.0 and then locate the EMBrowserInterface64.msi (or EMBrowserInterface32.msi if you are on a 32-bit system).</p>
<p>The installation is very straightforward and requires you to enter your existing personalization database, database account and authentication method.<br />
To test the environment manager browser interface, point your browser to http://server/EMBrowserInterface and it will display the home page.</p>
<p>The configuration is just as easy. Suppose you want to delegate personalization administration to the active directory group &#8220;Personalization Users&#8221;.<br />
Open the environment manager console, connect to the personalization database and go to &#8220;Access Rights&#8221;. Grant the &#8220;Personalization Users&#8221; group the &#8220;Web User&#8221; role like the screenshot below.</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2011/11/AppSense-browser-interface-web-user-rights.jpg"><img class="aligncenter size-medium wp-image-592" title="AppSense browser interface web user rights" src="http://www.michelstevelmans.com/wp-content/uploads/2011/11/AppSense-browser-interface-web-user-rights-300x213.jpg" alt="" width="300" height="213" /></a></p>
<p>The next thing you might want to configure is the archiving settings. Log into the environment manager browser interface and go to the &#8220;settings&#8221; view. (the settings view will only be available to users who have been granted the &#8220;administrator&#8221; or &#8220;Web Administrator&#8221; role)</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2011/11/AppSense-browser-interface-web-user-archiving-settings1.jpg"><img class="aligncenter size-medium wp-image-599" title="AppSense browser interface web user archiving settings" src="http://www.michelstevelmans.com/wp-content/uploads/2011/11/AppSense-browser-interface-web-user-archiving-settings1-300x297.jpg" alt="" width="300" height="297" /></a></p>
<p>Check everything you want your web users to be able to administer and click the &#8220;update settings&#8221; button.<br />
Everything is now all set up and ready to go.</p>
<p>For a &#8220;1.0 feature&#8221;, the AppSense environment manager browser interface works very well. You can&#8217;t do advanced tasks such as edit an application&#8217;s registry, but that&#8217;s not what it is aimed at.<br />
After playing with it for a while I&#8217;m finding it actually easier to do basic administration then the full console and it also seems a lot faster to work with as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/appsense-environment-manager-browser-interface-personalization-administration-web-browser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building a VMware ESXi 5.0 Whitebox home lab</title>
		<link>http://www.michelstevelmans.com/building-vmware-esxi-50-whitebox-home-lab/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=building-vmware-esxi-50-whitebox-home-lab</link>
		<comments>http://www.michelstevelmans.com/building-vmware-esxi-50-whitebox-home-lab/#comments</comments>
		<pubDate>Mon, 26 Sep 2011 07:47:57 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[Asus]]></category>
		<category><![CDATA[BIOS]]></category>
		<category><![CDATA[Box]]></category>
		<category><![CDATA[ESXi]]></category>
		<category><![CDATA[HCL]]></category>
		<category><![CDATA[Home]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[Kingston]]></category>
		<category><![CDATA[Lab]]></category>
		<category><![CDATA[Raid]]></category>
		<category><![CDATA[Sata]]></category>
		<category><![CDATA[SSD]]></category>
		<category><![CDATA[VT]]></category>
		<category><![CDATA[White]]></category>
		<category><![CDATA[Whitebox]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=535</guid>
		<description><![CDATA[My old ESXi 4.1 whitebox was nearly begging me to retire him. The maximum of 8gb memory on the Asus P5k mainboard and the 2 sata disks (no raid) spinning at 7200rpm were not keeping up anymore. After doing the mandatory research on the whitebox HCL sites, I decided to order the following: Intel Core i7 2600 3.40GHz 8MB Asus P8H67-V Mainboard (which <a href='http://www.michelstevelmans.com/building-vmware-esxi-50-whitebox-home-lab/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>My old ESXi 4.1 whitebox was nearly begging me to retire him. The maximum of 8gb memory on the Asus P5k mainboard and the 2 sata disks (no raid) spinning at 7200rpm were not keeping up anymore.</p>
<p>After doing the mandatory research on the whitebox HCL sites, I decided to order the following:</p>
<p><span id="more-535"></span></p>
<ul>
<li>Intel Core i7 2600 3.40GHz 8MB</li>
<li>Asus P8H67-V Mainboard (which has integrated VGA)</li>
<li>Kingston 16gb Memory</li>
</ul>
<p>At first I wanted to go for a sata-600 raid controller and place 2 sata-600 Western Digital VelociRaptor 10000rpm disks in raid 0. Instead I decided to take the plunge and go for 1 sata-600 Intel SSD, plugged in directly on the Asus onboard sata-600 controller.</p>
<p>Just like my old whitebox, I wanted to run ESXi 5.0 from a 2GB Kingston USB stick.<br />
My co-worker <a title="Gabrie van Zanten" href="http://www.gabesvirtualworld.com/" target="_blank">Gabrie van Zanten</a> pointed me to an incredibly easy way of installing ESXi to USB: Create a VM in VMware workstation, mount the ESXi 5.0 iso and connect the USB stick. Choose to install ESXi 5.0 to the USB stick and you&#8217;re done.</p>
<p>I connected the USB stick to my new system, enabled VT in the BIOS and booted off the USB stick.<br />
As expected the onboard Atheros AR8151 NIC was not recognized, but no &#8220;<em>vmkctl.HostCtlException Unable to load module /usr/lib/vmware/vkmod/vmfs3: Failure</em>&#8221; errors which my old ESXi 4.1 whitebox threw when it did not recognize the onboard NIC.<br />
Instead ESXi 5.0 reported that my network adapter was not supported, so I used the Intel Pro/1000 GT adapter from my old whitebox and tried again.<br />
After that ESXi 5.0 booted without problems and has been running stable with 8 servers for several days.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/building-vmware-esxi-50-whitebox-home-lab/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>PowerShell print server inventory script</title>
		<link>http://www.michelstevelmans.com/powershell-print-server-inventory-script/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=powershell-print-server-inventory-script</link>
		<comments>http://www.michelstevelmans.com/powershell-print-server-inventory-script/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 08:09:13 +0000</pubDate>
		<dc:creator>Michel Stevelmans</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Powershell]]></category>
		<category><![CDATA[Printing]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Gather]]></category>
		<category><![CDATA[Information]]></category>
		<category><![CDATA[Inventory]]></category>
		<category><![CDATA[List]]></category>
		<category><![CDATA[Print]]></category>
		<category><![CDATA[Printer]]></category>
		<category><![CDATA[Queue]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://www.michelstevelmans.com/?p=500</guid>
		<description><![CDATA[Getting information from all installed printers on a print server can be an impossible task without third-party tooling or scripts. PowerShell can make this really easy. I created a PowerShell script which lists all installed printers and gathers information like the printer name, driver, share name, location and the IP address (the actual IP address, not the portname <a href='http://www.michelstevelmans.com/powershell-print-server-inventory-script/' class='excerpt-more'>Read more...</a>]]></description>
			<content:encoded><![CDATA[<p>Getting information from all installed printers on a print server can be an impossible task without third-party tooling or scripts. PowerShell can make this really easy.</p>
<p>I created a PowerShell script which lists all installed printers and gathers information like the printer name, driver, share name, location and the IP address (the actual IP address, not the portname without the &#8220;IP&#8221; prefix).<span id="more-500"></span></p>
<p>The script outputs all the information to a new Microsoft Excel sheet which looks like this:</p>
<p><a href="http://www.michelstevelmans.com/wp-content/uploads/2011/09/Printserver_inventory.jpg"><img class="aligncenter size-medium wp-image-507" title="Printserver_inventory" src="http://www.michelstevelmans.com/wp-content/uploads/2011/09/Printserver_inventory-300x140.jpg" alt="" width="300" height="140" /></a></p>
<p>Make sure you change the $Printserver value to reflect your print server. By changing this value and running the script on your local workstation, you eliminate the need to install Microsoft Excel on your print server.</p>
<pre># Print server inventory script
# Created by Michel Stevelmans - http://www.michelstevelmans.com

# Set print server name
$Printserver = "PRINTSERVER"

# Create new Excel workbook
$Excel = new-Object -comobject Excel.Application
$Excel.visible = $True
$Excel = $Excel.Workbooks.Add()
$Sheet = $Excel.Worksheets.Item(1)
$Sheet.Cells.Item(1,1) = "Printer Name"
$Sheet.Cells.Item(1,2) = "Location"
$Sheet.Cells.Item(1,3) = "Comment"
$Sheet.Cells.Item(1,4) = "IP Address"
$Sheet.Cells.Item(1,5) = "Driver Name"
$Sheet.Cells.Item(1,6) = "Shared"
$Sheet.Cells.Item(1,7) = "Share Name"
$intRow = 2
$WorkBook = $Sheet.UsedRange
$WorkBook.Font.Bold = $True

# Get printer information
$Printers = Get-WMIObject Win32_Printer -computername $Printserver
foreach ($Printer in $Printers)
{
    $Sheet.Cells.Item($intRow, 1) = $Printer.Name
    $Sheet.Cells.Item($intRow, 2) = $Printer.Location
    $Sheet.Cells.Item($intRow, 3) = $Printer.Comment
    $Ports = Get-WmiObject Win32_TcpIpPrinterPort -computername $Printserver
        foreach ($Port in $Ports)
        {
            if ($Port.Name -eq $Printer.PortName)
            {
            $Sheet.Cells.Item($intRow, 4) = $Port.HostAddress
            }
        }
    $Sheet.Cells.Item($intRow, 5) = $Printer.DriverName
    $Sheet.Cells.Item($intRow, 6) = $Printer.Shared
    $Sheet.Cells.Item($intRow, 7) = $Printer.ShareName
    $intRow = $intRow + 1
}

$WorkBook.EntireColumn.AutoFit()
$intRow = $intRow + 1
$Sheet.Cells.Item($intRow,1).Font.Bold = $True
$Sheet.Cells.Item($intRow,1) = "Print server inventory - Created by Michel Stevelmans - http://www.michelstevelmans.com"</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.michelstevelmans.com/powershell-print-server-inventory-script/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
	</channel>
</rss>

