我试图用大部分的代码编辑从VB.NET word文档:
如何在Visual Basic .NET使Word自动创建新文档 http://support.microsoft.com/kb/316383
它的工作原理在我的机器上很好,但是当我发布到服务器上,我得到以下错误。
检索COM类工厂CLSID组件{000209FF-0000-0000-C000-000000000046}失败,原因是以下错误:80070005。
说明:在当前Web请求的执行过程中发生未处理的异常。 请检查堆栈跟踪有关该错误它起源于代码的详细信息和。
异常详细信息:System.UnauthorizedAccessException:用CLSID检索COM类工厂组件{000209FF-0000-0000-C000-000000000046}失败,原因是以下错误:80070005。
当我尝试只创建一个Word应用程序对象发生实际的错误
Dim oWord As New Word.Application
使用Visual Studio 2008和VB.NET 3.5。 我做了一个参考“的Microsoft Word 10.0对象库”,我看到的bin目录Interop.Word.dll文件。
开发计算机和Windows Server 2003上使用的MS Office 2003
仍然相当新的.NET和没有关于窗口服务器多少知识,而是出现“UnauthorizedAccessException”听起来像一个权限问题。 我想知道,如果有人可以上我可能需要做给我用字的小应用程序的访问指向正确的方向我。
这肯定听起来像一个权限问题。 你运行在一个窗口服务代码? 该服务通常作为本地系统运行,它可能没有权限访问Word对象模型。 此外,如果单词已经在使用一些其他用户的凭据运行,那么你的程序可能无法使用不同的凭据通过COM访问它。 在办公应用程序往往是单一实例,这似乎加剧了这一问题。
在我的情况下,字通过Windows服务下的服务帐户下运行。
问题是,桌面文件夹不存在在C:\Windows\System32\config\systemprofile
(或C:\Windows\SysWOW64\config\systemprofile
)。
添加它解决了这个问题对我来说。
这听起来像你可能在DCOM权限问题。 尝试编辑在DCOM配置话语权限。
这似乎是你正在经历。
http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/006cbbac-101a-40ea-ae16-d59a7a2da8b1
我遇到同样的问题,这个问题我区发现“为Microsoft Word中DCOM安全配置”。 在下面的链接,你可以找到一个一步一步的指导,以了解如何配置组件DCOM,repeate这些步骤WORD,和你的问题将得到解决。
http://www.biocompsystems.com/_public/DCOMConfigurationStepbyStepForXP.doc
谢谢,苏希尔Jinder
我曾在Windows 2008 R2相同的问题。 最后使用这个帖子: http://social.msdn.microsoft.com/Forums/en-US/netfx64bit/thread/65a355ce-49c1-47f1-8c12-d9cf5f23c53e
然后改变web.config中的模拟标识用户到另一个用户来解决它。
我敢肯定有解决方案的组合。
点击开始- >运行
键入regedit -32,然后按ENTER键。
- 注册表编辑器将得到开放。
转到注册表HKEY_CLASSES_ROOT \ Word.Application
选择Word.Application和全权限设置为以下用户: -
管理员,管理员,本地服务,系统,服务,互动和用户。
同时生成word文档我有同样的问题。 我通过检查任务管理器,并结束当前运行的进程WINWORD.EXEs解决,那么问题再次执行我的代码。 这个问题了。
文章来源: Retrieving the COM class factory for component error while generating word document