| 
 来源:http://blog.sina.com.cn/s/blog_7095482001019c2v.html  
问题描述: 
在Win8 x64环境下,VS2010的C#工程中引用了COM组件(Active X控件,且已正确注册),可是一运行工程就会报如下异常错误:  
未处理 System.Runtime.InteropServices.COMException   Message=没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))   Source=System.Windows.Forms   ErrorCode=-2147221164   StackTrace:        在 System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid, Object punkOuter, Int32 context, Guid& iid)        在 System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)        在 System.Windows.Forms.AxHost.CreateWithLicense(String license, Guid clsid)        在 System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)        在 System.Windows.Forms.AxHost.CreateInstance()        在 System.Windows.Forms.AxHost.GetOcxCreate()        在 System.Windows.Forms.AxHost.TransitionUpTo(Int32 state)        在 System.Windows.Forms.AxHost.CreateHandle()        在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)        在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)        在 System.Windows.Forms.AxHost.EndInit()        在 ORI.GTJDA.ImageProcessingControl.ImageViewControl.InitializeComponent()  
解决办法: 
造成上述错误的罪魁祸首就是工程文件“属性--生成”中的目标平台造成的,如下图,如果选择Any CPU或者x64就会出现上述问题,将它设置为x86,问题得以解决。  
 
  |