2010-12-08 15 views
2

Ich habe Programme sowohl lokal als auch in einer Citrix-Sitzung ausgeführt. Ich muss eine 1-Bit-Nachricht von dem Programm, das lokal läuft, an das Programm, das auf der Citrix-Sitzung läuft, sehr zuverlässig senden. Der Client heißt MetaFrame Presentation Server Client. Bisher habe ich über die folgenden Methoden nachgedacht.Nachricht an Citrix-Sitzung senden

  • Verwendung von TCP/IP. Dies erhöht jedoch die Komplexität und ich bin besorgt, ob interne Firewall-Einstellungen zwischen verschiedenen Unternehmensstandorten diese Kommunikation behindern. Dies wird jedoch meine bevorzugte Option sein, wenn alles andere fehlschlägt.
  • Verwenden der freigegebenen Zwischenablage, um eine Nachricht kurz zu senden. Diese Methode hat offensichtliche Probleme
  • Senden einer Tastenkombination, die von dem Programm auf der Sitzung abgefangen wird. Diese Methode hat offensichtliche Probleme
  • Verwenden eines gemeinsamen Dateiservers. Das Problem ist, dass die Dateiserver sehr unzuverlässig sind.

Ich suche keine Argumente für oder gegen eine der genannten Methoden. Stattdessen würde ich gerne wissen, ob Sie an eine andere Methode denken können?

Antwort

3

Versuchen Sie, die Nachricht vom Computer mit dem ICA-Client (heute Citrix-Empfänger genannt) an den Citrix Server (auch bekannt als XenApp, Presentation Server, Metaframe) zu senden?

Wenn die Antwort ja lautet, sollten Sie einen virtuellen Kanal für die Kommunikation verwenden. Hier ist ein Link zu der virtual channel SDK.

Hintergrund: Der Citrix Client und der Citrix Server müssen offensichtlich Informationen austauschen (Grafik, Tastatur, Maus, Audio, ...). Sie kommunizieren über so genannte virtuelle Kanäle, die eine logische Schicht über der bestehenden Netzwerkverbindung sind. Das Schöne ist, dass die virtuellen Kanäle mit einem SDK erweiterbar sind, d. H. Sie können Ihren eigenen virtuellen Kanal schreiben, um Informationen zwischen Client und Server sicher und zuverlässig auszutauschen.

+0

Ich wusste, dass es einen besseren Weg geben musste. Vielen Dank! – David