XenDesktop HDX3D交付Seamless Application

在某些情况下,为了优化体验,会需要使用XenDesttop来交付无缝模式的应用程序,至于何为无缝(Seamless)就不细说了。
在XenDesktop中,交付Seamless Application的话,一般情况下,还是比较简单的,但是在使用HDX3D,交付需要使用DirectX或者OpenGL的3D应用程序时,可能需要做一些特殊的处理,否则,颜色显示会比较模糊,用户的体验比较差。
在使用HDX3D交付无缝应用程序的时候,可以归结为3步,相对于普通的Xendesktop无缝应用交付,多了两步。
一、非HDX3D模式交付无缝应用程序:

一般情况下,进行了如上操作以后,就可以发布Seamless Application了,即只有程序界面,而没有背景的windows界面
注意:如果HDX3D应用程序也这样发布,那么程序也会启动,但是会比较模糊,无法配置图像质量。

二、HDX3D的情况下需要进行一些改造:

这里以Fluent程序的发布为例。

  1. 需要编写一个批处理文件,文件内容如上,第一条启动应用程序,第二条,启动PicaImpersonationClient.exe,完成后讲该批处理文件保存为Start-Fluent.bat。
  2. 创建Start-Fluent.lnk指向第一步中的批处理文件,并如普通程序交付一样,把该快捷方式放到SeamlessInitialProgram目录下即可
注意:到这,已经能够正常启动HDX3D发布的应用程序,同时也能通过ConfigTool来配置图像是否无损(lossless),但是注销的过程中,会发现,ConfigTool.exe进程无法关闭,也就导致了,ICA的会话无法注销,只能手动再连接中心中注销才可以。
三、修改PortICA的配置,来解决configTool.exe进程无法退出的问题
  1. 到处配置文件
  2. 导出完成后,我们会在C盘根目录看到original.xml文件,使用记事本等文本编辑工具打开
  3. 搜索<LogoffcheckSysModules></LogoffcheckSysModules>,并替换为<LogoffcheckSysModules><value>PicaImpersonationclient.exe,ConfigTool.exe</value></LogoffcheckSysModules>,修改完成以后保存,退出
  4. 导入修改后的配置

    至此,全部配置完成。

第三步,主要是用来配置PortICA协议,主要为Agent端,用来在注销的时候,检查配置中的两个进程,主要用来处理ConfigTool.exe进程,Agent会自动结束进程,从而使ICA会话能够正常的退出。

注意:如果第三步操作过程PortICA返回的XML文件为空或者里面为随机字符,乱码等,请参考另外一篇文章:

PortICASetDefaults.exe /o命令返回为空