Conversations from the MVP Summit: PowerShelling Citrix and Terminal Server login scripts?

Posted by Brian Madden on April 17, 2008. send this link to your friendsprint this post
Rating:
Votes: 1 rating(s),  Score: 1/5
  Doc #Id: b903
15
comments
4816 views

I'm at the MVP Summit this week. I was eating lunch the other day with Steve Greenberg, Benny Tritsch, and Tim Mangan. We got to talking about how all these "application frameworks" (Java, .NET Framework, Silverlight, etc.) have to load in every user session on a Terminal Server and how slow that is. (And how ultimately, as more apps are written in these ways, some of the "user density" advantages of Terminal Server versus VDI will disappear... But that's a topic for another day.)

We got onto this topic because I mentioned that a student in our 5-day Citrix Master class in Ausralia a few weeks ago told of doing the "right" thing. He said that he had taken the time to learn PowerShell and rewrote all of his VBS Citrix login scripts in PowerShell. The result? Login times went from about 2.5 seconds to over 15 seconds per user!

This is because PowerShell requires the .NET Framework. On a Terminal Server, the .NET Framework has to load in every user session. So not only does this produce a login delay as it loads the framework in each session, it is also very inefficient.

As a quick aside, during this conversation, Tim asked, "What? Powershell requires the .NET Framework? Then how does it work on Windows 2008 Server Core? (Since Server Core doesn't support .NET.)"

Benny's response: "It doesn't."

Reader Comments
It can be done!
Thursday, April 17, 2008 1:45:25 PM
PowerShell on Server Core
Thursday, April 17, 2008 2:06:41 PM

@Tim - How quickly you've forgotten about the PowerShell SoftGrid package I created while in your training class.  I explicitly left .NET out of the sequence as I always prefer it to be a core installed component.  Especially since there's little app conflict in the .NET Framework world.

@All - Regarding Server Core and PowerShell, this topic has been discussed quite a bit in the PowerShell community.  There has been rumors that Microsoft would include some compact/micro .NET Framework into server core that would allow things like PowerShell to work (considering that PowerShell only requires a small portion of the entire .NET Framework to function).  As far as what you'll do to manage Server Core if they don't make PowerShell available, you can still use WMI/ADSI for remote management.  I'm personally hoping that a micro .NET will be made available in server core, that way you can configure WinRM and use PowerShell 2.0 to remote script execution via SOAP.  Good times indeed.

Shawn 

VBscript
Thursday, April 17, 2008 7:37:33 PM

Guest
So what's wrong with vbscipts?  It does the Job, it's easy to learn and it's much faster and more powerful than PowerShell.