SimRemote1.DLL
namespace SimRemote1
{
public class RemoteObject : MarshalByRefObject
{
public string GetActiveDomain()
{
return AppDomain.CurrentDomain.FriendlyName;
}
}
}
Simpelserver.exe
private void Form1_Load(object sender, EventArgs e)
{
// TcpServerChannel channel = new TcpServerChannel(9932);
// ChannelServices.RegisterChannel(channel);
// RemotingConfiguration.RegisterWellKnownServiceType(typeof(ResumeLoader),
//"ResumeLoader", WellKnownObjectMode.SingleCall);
RemotingConfiguration.Configure("SimpleServer.exe.config");
}
simpleserver.exe.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.runtime.remoting>
<application name="SimpleServer">
<service>
<activated type="SimRemote1.RemoteObject,SimRemote1"/>
</service>
<channels>
<channel ref="tcp server" port="8080"/>
</channels>
</application>
</system.runtime.remoting>
</configuration>
SimpleClient.exe
private void Form1_Load(object sender, EventArgs e)
{
RemotingConfiguration.Configure("SimpleClient.exe.config");
MessageBox.Show("the client application is executing in:"+AppDomain.CurrentDomain.FriendlyName);
SimRemote1.RemoteObject remoteObj = new SimRemote1.RemoteObject();
MessageBox.Show("the remoting object is executing:"+remoteObj.GetActiveDomain());
}
simpleclient.exe.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration><system.runtime.remoting>
<application name="SimpleClient">
<client url="tcp://localhost:8080/SimpleServer">
<activated type="SimRemote1.RemoteObject,SimRemote1"/>
</client>
<channels>
<channel ref="tcp client" />
</channels>
</application>
</system.runtime.remoting>
</configuration>
注意,:
把 DLL添加到服务器和客户端的引用。
要把config文件添加到Debug.huo Release下