プロセス間通信(IPC)をデフォルトの設定で実行している場合、一定時間リモート接続がないと自動的に切断されてしまいます。
その状態でクライアントから接続しようとすると下のような例外がスローされます。
この問題を回避するには、リモートオブジェクトクラスで MarshalByRefObject の InitializeLifetimeService をオーバーライドしてnullを返すことでインスタンスの有効期間を無効化します。
Namespace IpcSample Public Class IpcRemoteObject Inherits MarshalByRefObject Public Property Counter() As Integer ''' <summary> ''' 自動的に切断されるのを回避する ''' </summary> Public Overrides Function InitializeLifetimeService() As Object Return Nothing End Function End Class End Namespace