tags:

views:

126

answers:

3

I have a COM interface to start and use a program. This works great on a local machine. Is there a possibility to start that program on another machine, through the network without installing other software on it or making changes to the program?

+1  A: 

DCOM though you'll need to configure security.

In C# you can instantiate the object remotely like so:

var obj = Activator.CreateInstance(Type.GetTypeFromProgID("Acme.Server", "remotepc", true));

So to instantiate the VB Regex library (so that it runs elsewhere)

dynamic re = Activator.CreateInstance(Type.GetTypeFromProgID("VBScript.RegExp", "remotepc", true));
re.IgnoreCase = true;   //Check that we can set properties
re.Pattern = "^A";
var chk = (re.Execute("Apple").Count > 0) ? "ok" : "failed";
Console.WriteLine(chk);
Grynn
A: 

You might be able to use COM+. You can create a COM+ application on the remote machine, then create an installation package, and finally deploy the application proxy on your local machine. The result will allow you to use the COM server just as if it was installed locally, without having to change your code.

eran
A: 

you can use .NET Remoting. start here.

Meysam Javadi