.Net Remotingを試す

サンプルはたくさんあるけど、試したので一応

サーバ

m_channel = New IpcServerChannel("remote")
ChannelServices.RegisterChannel(m_channel, False)
RemotingConfiguration.RegisterWellKnownServiceType(GetType(MenuRemoting.UserID), "userid", WellKnownObjectMode.SingleCall)

クライアント

Dim clientChannel As New IpcClientChannel()
ChannelServices.RegisterChannel(clientChannel, False)
Dim user As MenuRemoting.UserID = Activator.GetObject(GetType(MenuRemoting.UserID), "ipc://remote/userid")

こんなん。サーバが落ちるとクライアントはこけるが、クライアントが生き残っているとサーバが例外をはく(パイプを作成できません)みたいなで挫折