I would like to implement the following arrangement: published app communicates via TCP/IP with app running on the local client.
The reason for doing this is I would like the published app to be able to access a piece of the local hardware that isn't available under USB redirection or other means. I have both apps built and they work well standalone on the local PC.
What will be the local app is simply a service built in .NET/WCF. What will be the published app talks to the local app via http/TCP/IP connection. The local app(service) is listening for a connection from the published app. Published app initiates communication with the local app.
Is this possible under Xenapp? And if so to the published app what is the IP address of the local host where the local app is running? When the "published" app and the local app "service" run on a physical machine(no Xenapp at all) the "published" app simply calls into http:localhost:.
Is there a concept of "localhost" representing the local machine to the published app? Or do we have to use the actual physical IP address on the network to be able to communicate between the published app and the local app?
There is no guarantee that TCP/IP ports will be open between client and XenApp server, especially when the XenApp server is being access remotely.
Citrix offers a mechanism called Virtual Channels which are specifically designed for communication between client and server and device redirection is a typical usage.
A Citrix virtual channel is a bi-directional error-free connection used for the exchange of generalized packet data between a Citrix host for online delivery (XenApp or XenDesktop) and the Citrix Receiver online plug-in. For example: sound, graphics, client drive mapping, and printing are just a few of the virtual channels written by Citrix. The Citrix Virtual Channel Software Development Kit (VCSDK) allows software engineers to write both host-side applications and receiver-side drivers to support additional virtual channels using the Citrix ICA protocol. The host-side virtual channel applications run on XenApp or XenDesktop, and the client-side portion of the virtual channel runs on the local device where Citrix Receiver resides. This SDK provides support for writing new virtual channels for the Win32 and Windows CE versions of the online plug-ins for Citrix Receiver. See the accompanying documentation for detailed information about the client versions supported.