Hi,
I am implementing a server/client application using remoting. The server
communicates with the client by having the client pass an object over to the
server when it logs in. The object implements an interface which is shared
among both the server and the client. This approach worked fine when
debugging within visual studio. However, when I deploy the client as an
executable, the server can no longer access the object which the client
passes in with the following error:
at
System.Runtime. Remoting.Proxie s.RemotingProxy .InternalInvoke (IMethodCallMes s
age reqMcmMsg, Boolean useDispatchMess age, Int32 callType)
at System.Runtime. Remoting.Proxie s.RemotingProxy .Invoke(IMessag e reqMsg)
at System.Runtime. Remoting.Proxie s.RealProxy.Pri vateInvoke(Mess ageData&
msgData, Int32 type)
at ArtRemoting.ifc ArtClient.Ping( )
at ArtServer.ArtSe rver.PingClient (Object state) in c:\software
development\art server\artserve r\artserver.cs: line 243
This remoting proxy has no channel sink which means either the server has no
registered server channels that are listening, or this application has no
suitable client channel to talk to the server.
Basically, the object which the client passes has a function called Ping
which merely returns true. Using a timer, the server pings clients to see if
they are still alive. This error occurs on the first ping after the client
logs in. The object which the client passes to the server is a simple class
(with the ping method) inheriting from ContextBoundObj ect with the
[Serializable] attribute. This problem only occurs if I am not in debug mode
within visual studio, otherwise it is able to call the ping method on the
client object with no problems. Any help with this problem would be greatly
appreciated!
-Tim
I am implementing a server/client application using remoting. The server
communicates with the client by having the client pass an object over to the
server when it logs in. The object implements an interface which is shared
among both the server and the client. This approach worked fine when
debugging within visual studio. However, when I deploy the client as an
executable, the server can no longer access the object which the client
passes in with the following error:
at
System.Runtime. Remoting.Proxie s.RemotingProxy .InternalInvoke (IMethodCallMes s
age reqMcmMsg, Boolean useDispatchMess age, Int32 callType)
at System.Runtime. Remoting.Proxie s.RemotingProxy .Invoke(IMessag e reqMsg)
at System.Runtime. Remoting.Proxie s.RealProxy.Pri vateInvoke(Mess ageData&
msgData, Int32 type)
at ArtRemoting.ifc ArtClient.Ping( )
at ArtServer.ArtSe rver.PingClient (Object state) in c:\software
development\art server\artserve r\artserver.cs: line 243
This remoting proxy has no channel sink which means either the server has no
registered server channels that are listening, or this application has no
suitable client channel to talk to the server.
Basically, the object which the client passes has a function called Ping
which merely returns true. Using a timer, the server pings clients to see if
they are still alive. This error occurs on the first ping after the client
logs in. The object which the client passes to the server is a simple class
(with the ping method) inheriting from ContextBoundObj ect with the
[Serializable] attribute. This problem only occurs if I am not in debug mode
within visual studio, otherwise it is able to call the ping method on the
client object with no problems. Any help with this problem would be greatly
appreciated!
-Tim