私のアプリケーションでは、.NET Remotingを設定するためにRemotingConfiguration.Configure()
が呼び出されています。しかし、アプリケーションが実行されるたびにchannels要素のportName属性が異なる必要があるので、この特定の設定をプログラム的に構成する必要があります。RemoteConfiguration.Configure(configFile)を呼び出した後に設定を変更しますか?
とてもシンプルに聞こえますが(おそらく、私は一日中Googleから回答を探しています)。
RemotingConfiguration.Configure(Program.ConfigFilePath, false);
IChannel[] regChans = ChannelServices.RegisteredChannels;
IpcChannel ipcChannel = (IpcChannel)ChannelServices.GetChannel(regChans[0].ChannelName);
デバッガがどの私は["portName"] = uniquePortName
ようなエントリを追加する必要があるためにipcChannel._serverChannel._prop
は、ハッシュテーブルになることを私に示しているが、私は単純にアクセスする方法を参照して、これを変更することはできません。
は、これまでのところ私が持っています。
私はいつも* .configファイルをスクラップしてプログラム的に行うことができますが、実際にはのほとんどの設定を簡単に編集できるというメリットを捨てたくありません。
IpcClientChannel
オブジェクトを変更するには遅すぎますか?RemotingConfiguration.Configure()
が返されましたか?明らかに私はおそらくRemotingConfiguration.Configure()
の自分のバージョンを書くことができましたが、それはどちらかを行う正しい方法のようには見えません。