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

紧急求助,达人都进来看看了

编程语言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使用还是不行。

  如何解决,还望大家不吝赐教!非常感谢 --------------------编程问答-------------------- 你确定Flash10K.ocx是支持64位机的吗?

我自己写的VC++软件,支持64位机是需要另外单独编译的。猜想你需要一个支持64位机的Flash10K.ocx --------------------编程问答-------------------- 将vs.net 编译其中 cpu 类型设置为x86 重新编译  ,默认是any CPU --------------------编程问答--------------------
引用 2 楼 wuyq11 的回复:
将vs.net 编译其中 cpu 类型设置为x86 重新编译  ,默认是any CPU

补充:.NET技术 ,  .NET Framework
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,