|
問題が解決したので自己レスです。
方法としましては、IServerChannelSink、IClientChannelSink、IServerChannelSinkProvider、IClientChannelSinkProviderを実装し、TcpChannelの引数が3つあるメソッドを呼べば出来ました。 実装したIServerChannelSinkのProcessMessageメソッド内で、ITransportHeaders型のrequestHeaders[CommonTransportKeys.IPAddress]を参照することでアクセスしてきたクライアントのIPアドレスなどの情報を取り出すことが出来ます。 後はそれらをSystem.Runtime.Remoting.Messaging.CallContextなどに保存し、実際のリモーティングオブジェクト内でそれを参照すればOKです。 板汚し申し訳ありませんでしたorz
|