首页 新闻 会员 周边

跪求帮助:win7(64为),OWC11的使用问题。 检索 COM 类工厂中 CLSID 为 {0002E55D-0000-0000-C000-000000

0
悬赏园豆:50 [已解决问题] 解决于 2013-04-10 19:19

系统配置win7(64位),vs2010。office 2010。

我在VS2010中新建网站。

com选项卡引用"microsoft office web components 11.0",但是解决方案管理器里没有任何变动(这是什么原因呢?。所以我用以下两种方法。在vs2010 中都能打开。但是在IIS发布时都会显示错误。

1.在命名控件中。“using Microsoft.Office.Interop.Owc11;”(解决方案里没有bin目录,也没有“Interop.OWC11.dll”)。

2.直接在浏览选项卡引用了Interop.OWC11.dll文件(从别处拷过来的),会在bin目录下添加这个文件。命名空间“using owc11;”

以上都是在vs2010 中都能打开。但是在IIS发布时都会显示错误。

后来我安装了OWC11.exe,一样是上面那种情况。跪求帮助啊,谢谢各位大侠了,我已经折腾好多天了,块崩溃了~~~

错误信息如下:


“/生成柱状图表”应用程序中的服务器错误。
--------------------------------------------------------------------------------

检索 COM 类工厂中 CLSID 为 {0002E55D-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Runtime.InteropServices.COMException: 检索 COM 类工厂中 CLSID 为 {0002E55D-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。

源错误:

行 17: {
行 18: //创建图表空间
行 19: ChartSpace myspace = new ChartSpace();
行 20: //添加一个图表对象
行 21: ChChart mychart = myspace.Charts.Add(0);


源文件: h:\asp.net 典型模块\第13章\生成柱状图表\OWC.aspx.cs 行: 19

堆栈跟踪:

[COMException (0x80040154): 检索 COM 类工厂中 CLSID 为 {0002E55D-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。]
_Default.Page_Load(Object sender, EventArgs e) in h:\asp.net 典型模块\第13章\生成柱状图表\OWC.aspx.cs:19
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +25
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3064




--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.272

daxiaoyuyu的主页 daxiaoyuyu | 初学一级 | 园豆:91
提问于:2012-03-30 15:00
< >
分享
最佳答案
0

你安装了,就应该是已经注册过了,但是还是报这个错误,那就说明了,应该是操作系统为64位的问题。你在编译的时候将你的程序生成为X86的就应该可以了。

收获园豆:35
小小刀 | 小虾三级 |园豆:1991 | 2012-03-30 19:47
其他回答(4)
0

COM组件注册了吗?从错误信息上看应该是com组件没有注册或者是依赖组件没有注册导致的问题

收获园豆:5
玉开 | 园豆:8822 (大侠五级) | 2012-03-30 15:34
0

请问这个问题解决了没有?OWC11迁移到Windows2008 64位的服务器上,遇到了相同的问题。看了MSDN上的回答是说:There is no 64-bit version of Office available yet.  Ask at forums.iis.net how to force IIS into 32-bit mode.不知道博主你是怎么解决的?能分享一下嘛

收获园豆:10
zjgrape | 园豆:212 (菜鸟二级) | 2012-05-08 21:02

还没解决,看来要换系统了~

支持(0) 反对(0) daxiaoyuyu | 园豆:91 (初学一级) | 2012-05-09 23:03

@daxiaoyuyu: 哦,OWC11确实不能在64位上运行。

支持(0) 反对(0) zjgrape | 园豆:212 (菜鸟二级) | 2012-05-12 15:44

@zjgrape: 这个问题我已经解决了,是64位操作系统的问题。只要在IIS管理器里把程序要用到的应用程序池的配置的“启用32位应用程序”的值改为“true”。不知道你的这样能否解决。

支持(0) 反对(0) daxiaoyuyu | 园豆:91 (初学一级) | 2012-09-05 10:13
1

这是64位操作系统的问题。只要在IIS管理器里把程序要用到的应用程序池的配置的“启用32位应用程序”的值改为“true”。不知道大家用这样的方法能否解决。

daxiaoyuyu | 园豆:91 (初学一级) | 2012-09-05 10:14

太感谢了。我的就是这个问题。

支持(0) 反对(0) 谢尼玛 | 园豆:200 (初学一级) | 2014-07-05 12:18
0

64位操作系统下,IIS发布网站,注册完sqldmo后还报错,只需要修改下应用程序池为允许32位应用程序即可(网站所使用的应用程序池-右击 设置应用程序池默认设置-启用32位应用程序设为true)

xiaofei2012 | 园豆:202 (菜鸟二级) | 2013-11-27 17:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册