Active控件报错可能由多种原因引起,以下是一些常见的情况及解决方法:
注册问题
症状:提示“未能注册Active控件,请确保它正确注册”。

解决方法:在命令行中输入aximp.exe path /source
,将Active控件编译成C#可调用的DLL文件,然后将该DLL文件拷贝到项目中使用。
添加操作遗漏
症状:在设计界面拖控件没问题,但自己new出来就报错。
解决方法:在使用new创建AxControl对象后,需要将其添加到窗体或容器的控制集合中,即this.Controls.Add(control)
。
ActiveX部件不能创建对象
症状:点击附件中的控件按钮会出现运行时错误'429',提示ActiveX部件不能创建对象。
解决方法:使用regsvr32路径/组件.dll
进行注册;如果是IIS自带的常用组件出现问题,可尝试用regsvr32 scrrun.dll
和regsvr32 "C:\Program Files\Common Files\System\ado\msado15.dll"
命令重新注册相关组件;还可以尝试运行一些bat批处理代码来修复系统问题。
连接CAD自动画图时报错
症状:引用了cad对象,但在创建ActiveX控件时报错“类型没有定义”。

解决方法:将MyCad作为全局变量,在程序开始时获得CAD对象并一直保持,用完后关闭,在创建ActiveX控件时,注意检查CAD软件的“COM接口”兼容性,以及是否正确设置了对象的类型和属性。
Active控件报错的原因较为复杂,需要根据具体的错误信息和应用场景进行分析和解决,如果以上方法无法解决问题,建议查阅相关文档或咨询专业人士。
