Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在Citrix中从浏览器导航到应用程序_C#_.net_Windows_Citrix_Uri Scheme - Fatal编程技术网

C# 如何在Citrix中从浏览器导航到应用程序

C# 如何在Citrix中从浏览器导航到应用程序,c#,.net,windows,citrix,uri-scheme,C#,.net,Windows,Citrix,Uri Scheme,我目前正在开发web应用程序和windows应用程序之间的集成,在标准设置下一切都可以正常工作。然而,在等式中引入Citrix会使一切变得相当复杂 当前的解决方案 目前,我们有一个POC(概念验证)运行,它与我们开发的一个小exe一起定制,并且()。通过这种方式,我们可以查看应用程序的实例是否正在运行。如果是,或者不是,我们在一个新的进程中启动应用程序,并等待它准备好,等待我们调用它 Citrix引入的问题 现在,在使用Citrix桌面会话时,我们不怀疑会遇到任何问题,但在应用程序会话(AKA)

我目前正在开发web应用程序和windows应用程序之间的集成,在标准设置下一切都可以正常工作。然而,在等式中引入Citrix会使一切变得相当复杂

当前的解决方案 目前,我们有一个POC(概念验证)运行,它与我们开发的一个小exe一起定制,并且()。通过这种方式,我们可以查看应用程序的实例是否正在运行。如果是,或者不是,我们在一个新的进程中启动应用程序,并等待它准备好,等待我们调用它

Citrix引入的问题 现在,在使用Citrix桌面会话时,我们不怀疑会遇到任何问题,但在应用程序会话(AKA)中,我们的实现遇到了障碍。总而言之,我们现在在完成以下步骤方面存在问题:

  • 注册自定义URI方案处理程序:这可能根本不受支持。我们现在使用它的方式是,它指向磁盘上的应用程序,但应用程序安装在服务器上
  • 检测实例是否正在运行:我们不知道在这个设置中是否可能使用全局原子,我也找不到任何关于这个的文档
  • 使用SendMessage调用XenApp窗口:当运行最简单的XenApp配置时,我们可以复制,但应用程序从未收到发送的消息
  • 在当前解决方案范围内解决此问题 上述场景能否在Citrix环境中使用应用程序会话实现?如果是,怎么做?到目前为止,我执行的测试似乎证实了我的怀疑,即此设置中根本不支持它

    以类似的方式解决它 我们开发的POC简单且模块化,更改实例的位置和通信方式很容易实现,并且可以根据客户的特定设置进行配置。然后,它将需要其他检测、启动和与主应用程序通信的方式

  • ,而全球原子方法似乎不起作用
  • 如果应用程序没有运行,就启动它,这是我几乎已经放弃的事情,考虑到在这样的设置中应用程序可以以多种不同的方式分发,因此可能必须要求应用程序已经运行
  • 即使如此,我也无法在Citrix设置中使用SendMessage。它根本不处理我发送给它的消息。这也是XenApp不支持的吗?我找不到这方面的任何文件。非常欢迎调用托管应用程序的其他想法
  • 最终,解决方案对于我们的citrix客户来说非常简单,因为他们可以:

  • 首先打开我们的软件,从内部启动一个浏览器窗口(我们有打开浏览器的各种链接),导航现在可以完美地工作
  • 定制一个托管的浏览器应用程序,使其与我们的软件在相同的服务器环境中运行,然后我们的POC就能够像启动常规桌面环境一样启动我们的软件