已有57人关注
关于remoting文件传递请教八
发表在C#图书答疑 2010-07-09
是否精华
版块置顶:
您好,感谢及时回帖!继续请教Remoting问题了!
1..Visual C#开发技术大全(2007年11月版)第39章,39.2.6:如何传送自定义类对象中介绍了一个按值编组和按引用编组的例子(777页)。内容有ExeClient(),NewMetHod(),ExeServer(),NewMetHod().不过介绍的太简单了看不懂。能请求帮助吗?
   Remoting功能强大,很想在RemotingClass中,增加自己定义的方法,在远程调用。但是,除了fc.GetFile()
方法之外,其它方法都有问题。
2..39.3.5:简单Remoting运行测试:
无论在两台计算机上,或一台计算机上测试,结果相同:
(1)运行服务器程序,运行客户端程序,进入测试状态。
(2)客户端按键:测试远程类对象。
(3..1..)服务器端相应:出现远程类在服务器端对象被(n)次调用2010-7-10。。。,判断=正常。
(3..2..)客户端相应:鼠标不能退出,出现假死状态,不能连续按。客户端退出,重新启动之后按键,
          服务器端相应ok,显示(n+1)次调用,但是客户端相应鼠标不能退出,出现假死状态。
   难道除了fc.GetFile()之外的,其它服务器方法,不能调用?
          怎样才能解决客户端异常呢?
/////////////////////////////////////////////////////////////////////////////


分享到:
精彩评论 2
满园春色关不住
学分:0 LV1
TA的每日心情
努力自律
2023-11-19 09:49:04
2010-07-09
沙发
曹老师:
您好,很高兴再一次回答您的问题,对于您提出的问题可以通过如下方法解决。
问:难道除了fc.GetFile()之外的,其它服务器方法,不能调用?
答:
Remoting的实现原理是跨应用域之间的按引用封送调用,可以在RemotingClass
程序集中添加新的方法,添加方法后方可在客户端调用此方法,要注意一点,客
户端与服务器端都引用了RemotingClass程序集,所以在上面的RemotingClass中
添加了新的方法并编译后不要忘记更新服务器端和客户端对此程序集的引用。
小科_mrkj
学分:43 LV2
2010-07-15
板凳
曹老师:
    您好,关于您说的Remoting远程传输客户端假死问题的解决如下:
            string s = string.Empty;
            Thread th = new Thread(
                () =>
                {
                    s = fc.GetTime().ToString();
                    Invoke(
                        (MethodInvoker)(() => 
                        {
                            MessageBox.Show("远程类对象返回的值为" + s);
                        }));
                });
            th.IsBackground = true;
            th.Start();
另外,使用Remoting远程调用带参数方法的实现代码如下:
类库中带参数方法代码如下:
        public string GetMessage(string s1,string s2)
        {
            return s1 + "   :   " + s2;
        }
客户端调用代码如下:
        private void button2_Click(object sender, EventArgs e)
        {
            MessageBox.Show(fc.GetMessage(textBox1.Text, textBox2.Text), "提示!");
        }
首页上一页 1 下一页尾页 2 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照