.NETリモーティング(IPC版)クライアント
(続きです)
クライアント側の実装です。サーバ側の設定に合わせて、チャネルを"ipc://myserver/mymessage"としています。
public partial class ClientForm : Form { private MyMessage myMessage; public ClientForm() { InitializeComponent(); } private void ClientForm_Load(object sender, EventArgs e) { // クライアントチャネル作成 // System.Runtime.Remotingを参照設定に追加しておくこと IpcClientChannel clientChannel = new IpcClientChannel(); ChannelServices.RegisterChannel(clientChannel, true); // オブジェクト取得 // URIはサーバ側に従って設定 myMessage = (MyMessage)Activator.GetObject( typeof(MyMessage), "ipc://myserver/mymessage"); } private void btnSend_Click(object sender, EventArgs e) { string text = string.Empty; try { // リクエスト設定 MyRequest request = new MyRequest(); request.data = tbRequest.Text; // 通信実施 MyResponse response = myMessage.Call(request); text = response.data + "\r\n"; } catch (Exception ex) { text = ex.Message + "\r\n"; } // 画面表示 tbResponse.Text += text; } private void btnClear_Click(object sender, EventArgs e) { tbResponse.Text = string.Empty; } }