微软专家救命:关于远程调用(Remoting)中的调用构造函数参数的问题,及远程调用中怎样向客户端传递事件的问题

kfzdp 2003-04-17 09:21:01
大侠:
我现在用Remoting类作了一个远程调用的Demo,是想把以前公司现有的基于DCOM的软件升级到.NET下。现在碰到了两个问题。
一、我服务器端的类的构造函数有参数,但我在客户用obj=(CallOut.ICallOut) Activator.GetObject(typeof(CallOut.ICallOut),"tcp://LocalHost:8085/SayHello");
这样的方式创建类的实例却不能把构造函数中的参数传进去。请问大侠们我应该怎么写才能传递构造函数的参数?
二、我的服务器端还想往客户端传递事件,请问这在Remoting框架下可以实现吗?如果可以实现我应该怎么作?最好有个例子。
三、客户端激活和服务器端激活具体有什么区别,我不是说概念上的。我想问的是
具体服务器端怎么设置才能设成客户端激活的。
四、Activator.CreateInstance()后面的参数具体该怎么填呢。能不能给个例子。
它的参数是(TypeName,object[] Args),我不知道object[] Args该传什么
值。Args是不是就是传到构造函数里的参数。

我是初学者,可能提问的有些不清楚,请各位大虾原谅。

多谢。
...全文
106 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
zhaodp 2003-08-01
服务器端激活类型的对象,不支持带参数的构造函数。只有客户端激活的对象才支持构造函数
回复
kfzdp 2003-04-19
楼上的你知道我问的什么么?
回复
一般的带参数的构造函数这么些就行,如果不行的话,就写接口函数吧。
#include ...

CError::CError(LPSTR lpzFileName /* = NULL */, bool bQuit /* = false */)
{
fLogFile = fopen(lpzFileName, "wt");
lpzErrMsg = NULL;
bErrQuit = bQuit;
}

CError::~CError()
{
if(lpzErrMsg != NULL)
free(lpzErrMsg);
if(fLogFile != NULL)
fclose(fLogFile);
}
回复
相关推荐
发帖
VC.NET
创建于2007-09-28

7540

社区成员

.NET技术 VC.NET
申请成为版主
帖子事件
创建了帖子
2003-04-17 09:21
社区公告
暂无公告