以程序方式访问Citrix接收器和连接中心

本文关键字:连接 接收器 Citrix 程序 方式 访问 | 更新日期: 2023-09-27 18:27:06

我想为从连接到Citrix Farm的瘦客户端运行的应用程序添加一些功能。

所有这些都需要打开Citrix Connection Centre(右键单击Citrix Receiver,然后单击Connection Centre),打开"preferences"选项,然后再次关闭Connection Centre。这解决了我们遇到的一个问题,我想为我们的用户实现自动化。

有人能提出一种通过使用.NET框架来实现这一目标的方法吗?如有任何建议,不胜感激。

我在.NET-3.5框架内使用Citrix 7.6

以程序方式访问Citrix接收器和连接中心

我用以下方法解决了这个问题:

Process.Start(@"C:'Program Files (x86)'Citrix'ICA Client'concentr.exe");
IntPtr windowPtr = FindWindowByCaption(IntPtr.Zero, "Citrix Connection Center");
SetForegroundWindow(windowPtr);
SendKeys.SendWait("{r}");
IntPtr prefWindowPtr = FindWindowByCaption(IntPtr.Zero, "Citrix Receiver - Preferences");
SendMessage(prefWindowPtr, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);
SendMessage(windowPtr, WM_CLOSE, IntPtr.Zero, IntPtr.Zero);

哪个:

  • 打开Citrix连接中心(concentr.exe)
  • 将窗户移到前面
  • 发送R键(这将打开首选项)
  • 关闭两个窗口(浓度和首选项)

有关调用的方法FindWindowByCaptionSetForegroundWindowSendMessage 的详细信息,请参阅pinvoke