我多年来一直在使用MFCOM将Citrix Xenapp管理任务整合到我们的自定义管理应用程序中,这些应用程序主要使用Java编写,部分使用C ++编写。
我们的Citrix管理员现已告知我,MFCOM正在逐步淘汰,Powershell Cmdlet作为新的Citrix XenApp API提供。他将在没有MFCOM支持的情况下建造我们的下一个农场。
(这里是我抱怨的地方。但如果您愿意,可以跳过抱怨,因为这对我后面提出的问题不是必不可少的:只有脚本编写的API很难并且容易出错使用Java等语言/ C ++ / C#。捕获和处理异常是不可靠的,传递和接收复杂的参数(如集合或对象)很麻烦,并且知道脚本的解释器exe是您想要的地方,并且您需要的版本需要大量额外的代码。抱怨完成。 )
所以我必须重写应用程序。以下是我的问题:
Powershell Cmdlet是XenApp未来唯一支持的API吗?
如果是这样,人们如何使用非Microsoft语言(如Java / C ++ / Python /等)访问此API?每个人都在不同的流程中启动脚本吗?
如果我们使用C#重写应用程序的Citrix部分,我们是否可以访问这些Cmdlet而无需在单独的进程中删除脚本?我很乐意使用C#。我的主要愿望是每次需要调用Citrix函数时都不要启动单独的进程。
由于
答案 0 :(得分:1)
是的,PowerShell SDK是XenApp 6唯一受支持的API,也可能是未来版本。
但是,在使用API时(至少不是来自托管代码),您不必启动单独的powershell.exe进程。您可以使用运行空间或Citrix XenApp 6包装程序集。我推荐后者主要是因为类型安全。
Citrix CTP Jason Conger编写了一个series of articles,解释了如何从MFCOM转换到PowerShell SDK。您可能想要特别阅读这两个: