I have a program (I created) and I want to start it on the server when the webpage loads.
Here is the code I have
public partial class _Default : S
Have you tried something like this in Javascript :-
var shell = new ActiveXObject("Shell.Application");
var appExe = @"D:/Path to /My/Program to be run.exe";
shell.ShellExecute(appExe , "", "", "open", "1");
You could use ProcessStartInfo.
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = @"D:/Path to /My/Program to be run.exe";
psi.WorkingDirectory = IO.Path.GetDirectoryName(psi.FileName);
Diagnostics.Process.Start(psi);
It depends what you're trying to run. Maybe when you run it from your C# app something's missing. You also might not have the correct permissions to run the app from C#. That's all I can really say without knowing what's trying to be run.
This is a security issue. Running any exe from outside the bin folder poses a security threat. You have to copy the exe you are trying to run in the bin folder.
It sounds like the application you're trying to run has a user interface. If you're intention is to run this on the server using the ASP.NET application pool account, you will have fewer problems if you design the application as a console app, and guard all access to external resources, like your HMI device, with logged exceptions.