我正在创建一个使用office 2007/2010自动化的简单asp.net网站..当我在本地机器(窗口7)上的iis 7上发布网站时有异常
Retrieving the COM class factory for component with CLSID
{000209FF-0000-0000-C000-000000000046} failed due to the following error:
80080005 Server execution failed (Exception from HRESULT: 0x80080005
(CO_E_SERVER_EXEC_FAILURE)).
我搜索了这个异常,我发现我必须在DCOM配置中为office设置一些权限。
我已经打开了组件服务并打开了DCOM配置,但是我还没有找到Microsoft Word Document,我发现只有办公室字97 - 2003。
任何人都可以告诉我如何解决这个问题。
答案 0 :(得分:16)
在这里找到答案:DCOM Failure of Office Automation
如果您运行的是具有32位Office的64位服务器,则可能无法找到此DCOM设置。您需要从命令提示符运行“MMC -32”以启动32位MMC,然后从“文件>”中添加“组件服务”。添加/删除管理单元菜单。
答案 1 :(得分:6)
是的, office word 97 - 2003 是DCOM文档(相应应用程序)Word 2007或2010的正确名称。不要问我为什么......
哪里可能有麻烦?
用户必须能够访问桌面。如果从ASP.NET调用Word,则可能不具有此访问权限。因此,请在 dcomcnfg.exe 中明确设置帐户。不要使用启动用户(它是一个IIS身份,它没有自己的桌面),也不要使用交互式用户(只有在某些情况下才有效)用户已登录。)
在我的解决方案中,我设置了:
也许另一种方式是可能的,但这应该有效。