在web页面引用windows控件的问题

xuanzg 2005-02-21 03:14:04
我初学C# 我遇到一个问题 就是在web界面上引用我原来用vc6做的控件,只要我程序内部以调用这个控件的方法 就会 出现
"异常详细信息: System.Runtime.InteropServices.COMException: 灾难性故障"

请大家帮忙!
...全文
142 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyqyyy 2005-02-22
  • 打赏
  • 举报
回复
只能完全封装,属性什么的就别想用了,数据交换用SOCKET吧!实现起来比较重杂.
huleeyar 2005-02-22
  • 打赏
  • 举报
回复
建议不要用那个控件,以后你会越来越累的
duxinrun 2005-02-22
  • 打赏
  • 举报
回复
这应该是一个运行期错误。也就是说你所编写的COM组件在运行的时候突破了InterOpServices的限制而导致了COM与.net交互的失败。原因可能很多。建议参考InterOpServices的文档。
xuanzg 2005-02-22
  • 打赏
  • 举报
回复
to douxulai(冰汽水) :
谢谢你的回复

可是我现在是在自己本机上运行, 我的机器上各种编译环境都有。
vs6, vs.net, psdk ....

我也很奇怪,为什么会这样...
douxulai 2005-02-21
  • 打赏
  • 举报
回复
可能该控件还需要别的dll,保证一起注册进来即可
因为单纯看System.Runtime.InteropServices.COMException这个异常的话,应该是COM内部抛出来的
所以说,COM本身也许没有什么问题,你的C#不是也可以识别这个COM中的各种属性方法了吗?

可能COM内部的处理又调用了VC6的一些老的库,比如MFC4.2,那么请把这些也一起注册进来

另外,给楼主推荐个工具:COM Explorer v2.0
用来看dll或ocx的信息,里面会有该dll或ocx依存那些库的信息,照着部署就是了。
FJGoodGood 2005-02-21
  • 打赏
  • 举报
回复
把你的调用代码贴来看看,不排除是控件的问题。
xuanzg 2005-02-21
  • 打赏
  • 举报
回复
to FJGoodGood(_FJ_强中强):
...
Regsvr32 -i 注册一下,然后添加引用时选择COM组件
...
这个控件 我已经住测过了 也添加引用了
FJGoodGood 2005-02-21
  • 打赏
  • 举报
回复
先把VB控件用 Regsvr32 -i 注册一下,然后添加引用时选择COM组件,在列表里选择你刚才注册 VB 控件即可。
xuanzg 2005-02-21
  • 打赏
  • 举报
回复
to RushDJ()
我用vc6作的控件就是ActiveX的。
  • 打赏
  • 举报
回复
要把控件做成ActiveX的
xuanzg 2005-02-21
  • 打赏
  • 举报
回复
自己 up 一下

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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