c#使用Flash控件AxShockwaveFlash时,报“未注册类”。

背景:

网上下载了一个小程序用到了Flash控件,运行的时候却报错,实例AxShockwaveFlash类的时候报“未注册类”。于是上网查找资料,有人说要注册c盘下面flash安装路径下的Flash.ocx后再在winform工具栏中新增选项卡,在com组件tab页导入Flash.ocx。可是我自己没有找到Flash.ocx文件。

解决方法:

首先要知道flash默认的安装路径,32位系统的安装路径为:C:\Windows\System32\Macromed\Flash

64位系统的安装路径为:C:\Windows\SysWOW64\Macromed\Flash

根据自己本地的操作系统查看对应目录

c#使用Flash控件AxShockwaveFlash时,报“未注册类”。

如上图,画了几个红框,必须要有如图的几个文件。1、是用来用Regsvr32命令注册,然后在winform工具栏中新建选项卡,右键“选择项”,选择"com组件"tab页去添加控件的。做了这步操作以后,在工具栏里面就有控件可以拖拽使用了。2、是Flash的activex插件。3、是Flash的pp插件。

PS:之前我去Flash官网更新最新flash player第一次做更新操作的时候,只安装了pp插件,后来又做了一次同样的操作去更新flash,发现更新了activex插件,目前我还没搞清楚为什么会这样。一次偶然的操作让我发现了我少装了activex插件,得感觉qq,因为最新的qq不再内置flash插件了,qq提供了按钮让我们手动去装flash插件,而且qq提示了我的环境缺少activex插件。

------------------------------------------------------------------------------------------------------------------------------------------------------------------

做完上面的步骤以后,环境应该已经ok了,实际上就是把flash两个插件,一个activex插件,一个pp插件装好。