当前位置:编程学习 > C#/ASP.NET >>

【没有注册类别】32位系统运行正常的系统,在64位系统上运行不正常

编程语言C#,用的VS2005的IDE。因为要用到swf文件,所以程序使用到了Flash10K.ocx这个控件。在我本机上(x32 XP专业版)上运行一切正常,swf能正常打开播放。在其他安装了.net以及注册了Flash10k.ocx的32位XP上运行也正常。但是一挪到64位XP上就出现问题:
System.Runtime.InteropServices.COMException (0x80040154): 没有注册类别 (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
   at System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid, Object punkOuter, Int32 context, Guid& iid)
   at System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)
   at System.Windows.Forms.AxHost.CreateWithLicense(String license, Guid clsid)
   at System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)
   at System.Windows.Forms.AxHost.CreateInstance()
   at System.Windows.Forms.AxHost.GetOcxCreate()
   at System.Windows.Forms.AxHost.TransitionUpTo(Int32 state)
   at System.Windows.Forms.AxHost.CreateHandle()
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
   at System.Windows.Forms.AxHost.EndInit()
   at WZ.frm2D_RAClass.InitializeComponent() in D:\My Documents\Visual Studio 2005\Projects\分析软件\WZ\frm2D_RAClass.Designer.cs:line 1333

   其中第1333行就是Flash控件的EndInit()的调用。

   Flash10K.ocx控件在该64位系统上是已经注册了,使用RegDllView查看过了。可是就是Flash控件初始化阶段过不去。注销并重新注册该控件也不行。升级Flash的Activx使用还是不行。

   如何解决,还望大家不吝赐教!非常感谢 --------------------编程问答-------------------- 在项目属性里设置“生成”=>“目标平台”为x86而不是默认的ANY CPU
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,