简单的组件问题,大家看看。

huyz 2008-02-16 12:26:05
我用.net试着写一个组件,编译没问题,可用客户端调用时总是出现错误:
未处理的“System.NullReferenceException”类型的异常出现在 system.enterpriseservices.thunk.dll 中。
其他信息: 未将对象引用设置到对象的实例。

组件的代码:
using System;
using System.EnterpriseServices;

[assembly: ApplicationName("Hello World")]
[assembly: ApplicationActivation(ActivationOption.Library)]
namespace HelloWorld
{
public class MyComponent: ServicedComponent
{
public string WakeUp()
{
return "Hello World!";
}
}
}

客户端是Windows程序,已引用组件,代码很简单:
HelloWorld.MyComponent obj=new HelloWorld.MyComponent() ;
textBox1.Text =obj.WakeUp();

如果将组件继承ServicedComponent类去掉,作为普通组件使用,则没有问题。
各位帮忙解释一下,100分奉上。
...全文
156 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
哈哈鬼 2008-09-02
  • 打赏
  • 举报
回复
看来杀毒软件影响很大哦。
huyz 2008-07-18
  • 打赏
  • 举报
回复
找到问题了,是卡巴斯基,卸载后一切正常!
huyz 2008-02-20
  • 打赏
  • 举报
回复
加入了gac,情况一样
whycom 2008-02-19
  • 打赏
  • 举报
回复
去msdn

如果是手动注册组件,必须装入gac
bicaizi 2008-02-19
  • 打赏
  • 举报
回复
我现在是看见这些代码,头都大了
whycom 2008-02-18
  • 打赏
  • 举报
回复
加入gac没?
huyz 2008-02-18
  • 打赏
  • 举报
回复
com+组件应该不用加入gacutil吧?
huyz 2008-02-17
  • 打赏
  • 举报
回复
我已使用强名称,在VS2003命令提示窗口用regsvcs *.dll
仍然提示“未将对象引用设置到对象的实例”
不能注册,实在是百思不得其解啊!
wdzr_826 2008-02-17
  • 打赏
  • 举报
回复
up
huyz 2008-02-16
  • 打赏
  • 举报
回复
HelloWorld.MyComponent obj=new HelloWorld.MyComponent() ;
错在这行
wuyi8808 2008-02-16
  • 打赏
  • 举报
回复
出错在哪一行上?
zhangjjhua 2008-02-16
  • 打赏
  • 举报
回复
代码 看似没有问题.

看看三楼的
huyz 2008-02-16
  • 打赏
  • 举报
回复
up
huyz 2008-02-16
  • 打赏
  • 举报
回复
1.加入公共的默认构造函数
public MyComponent()
{}
2、已使用强名称
3、是不是在VS2003命令提示窗口用
regsvcs *.dll
仍然提示“未将对象引用设置到对象的实例”
真相重于对错 2008-02-16
  • 打赏
  • 举报
回复
看看com+要求,
1、那个类要求有公共的默认构造函数
2、那个类要求有强名称
3、正确注册

8,834

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 组件/控件开发
社区管理员
  • 组件/控件开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧