Link to home
Start Free TrialLog in
Avatar of jgrammer42
jgrammer42

asked on

Linux Mono to run Windows EXE file errors out

I have a C# program that runs perfectly under Windows 10.  It uses Connected Services so that I can add in additional Class and Method functions to connect to Ultimate Software's HR system and pull our employee information from.  What I would like to do is run this application under Linux CentOS.  I installed Mono for Linux on both CentOS 6 and CentOS 7; and verified 100% that it can and does run compiled Visual Studio C# programs under Linux.  No problem.

However, when I run the EXE program under Linux Mono, it does not connect to the external website defined in Connected Services.

Here is the line it is failing on.

loginClient = new LoginServiceClient("WSHttpBinding_ILoginService");

Open in new window


And the error I get back, is (of course), a NullReferenceException as the defined object of 'loginClient' never gets instantiated.

System.NullReferenceException: Object reference not set to an instance of an object.

Open in new window


Has anyone ever successfully taken an EXE file for Windows using Connected Services and run it under Linux Mono?

Thank you,
Jeff
Avatar of noci
noci

AFAIK you need to compile it under Mono tooling on Linux.
to run .EXE files you need WINE (and then some specific configuration).

(Don't Assume Mono work like windows software.   it is different, the platform is different, and a lot of stuff isn't ported.
There used to be moonlight (look alike of Silverlight)  except that microsoft broke it repeatedly  by changing the specs after a new moonlight release was done.   Other things might not work either.)
Avatar of jgrammer42

ASKER

AH...I did not know that.  I will try that and see how it runs.
ASKER CERTIFIED SOLUTION
Avatar of noci
noci

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Recompiling using the MONO IDE did not make a difference.  I will have to figure out some other method.

Thank you very much!