I have a web server that shows an application that in turn manages some networked devices. Previously, the application was used by "fat clients", and it was trivial to associate a fat client with the device - by means of the fat clients' IP address.
Now, in a Terminal Server environment with "real" thin clients (Wyse Terminals, e.g.) share the same IP - that of the terminal server, of course. Note that the web server is not running on the terminal server, so I cannot use the Win32 API WTS-functions.
Things I tried that didn't work:
- use WScript.ExpandEnvironmentVariables: won't work, because the users don't have the rights to do ActiveX
- check the HTTP headers: at least I was unable to identify the proper session. User-Agent didn't identify the terminal, Remote-Addr points to the terminal server. Duh.
- create desktop shortcuts and pass the terminal in the URL: doesn't work because users switch workstations, and the shortcut would follow...
Things that might work, but I don't know how
- maybe there IS some HTTP header I need to check (clients run IE8 only - would that help?)
- maybe there is some Javascript code to determine the terminal
About the only thing that I know would work:
- clients to manually identify their terminal by choosing it from a list / entering the name manually. Works, but error prone.