MFCOM to PowerShell: How to Make the Transition
MFCOM has been the de facto standard for programmatically interfacing with Citrix XenApp. Whether you wanted to write a simple script or develop an application that interfaced with XenApp, MFCOM was the answer. Now, Citrix is committed to building their management architecture on PowerShell--not just for XenApp, but for all Citrix products. That's great news for standardization across platforms and aligning with Microsoft on using PowerShell for management architectures. Now, the question is how do you take what you know about MFCOM and translate that to PowerShell?
As you may of may not already know, Citrix has committed to building their management architecture (and SDK) on PowerShell – not just for XenApp, but for all Citrix products.
In XenApp 6.0, MFCOM is not available anymore. The underlying architecture has changed dramatically enough to make backward compatibility with MFCOM impossible. The replacement for MFCOM is PowerShell. MFCOM-based scripts need to be completely re-written in XenApp cmdlets. In most cases, the conversion should be simple and most MFCOM scripts can be replaced with one-liner PowerShell commands.
Source: Citrix XenApp 6 PowerShell SDK reference manual.
That’s great news for standardization across platforms and aligning with Microsoft on using PowerShell for management architectures. But, that begs the question – what do you do about all those scripts and applications that leverage MFCOM going forward? I’ll be presenting a session at BriForum 2010 with Brandon Shell about this very topic. The session will cover:
- General Object Orientation
- Specific Citrix XenApp objects
- Examples of how scripts and applications were done with MFCOM
- Converting scripts and applications to use PowerShell
- PowerShell remoting
- Availability of PowerShell cmdlets on XenApp 5 and XenApp 6
- C# applications leveraging the PowerShell command wrapper
BriForum takes place from June 15th to June 17th at the Hilton Chicago Hotel. There is still time to register.