Ok, I was originally looking for how to implement WCF in C++, but that doesn't look likely to succeed. So, here's my issue. I have some plant automation code that controls steel furnaces. Most of the time, this runs on a Windows Server, but sometimes our customers request the server be hosted on a Unix or VMS box. The Graphical side of this (called a Human Machine Interface or HMI) is sometimes written using native code, but sometimes is hosted in process automation programs (like WonderWare or WinCC) which run ActiveX/.Net controls (Interop Net controls, not really ActiveX), but in all cases are windows only.

I need to get data from the services made available on the server (Windows, Unix or VMS) and make them available over a network (but sometimes locally) to a Windows PC. Since it has to run on these three servers, my options are to have the code in C++ (common to all three OSs), or to write from scratch for each system (not).

So, does anyone have any advice on the best way to make this happen?