【发布时间】:2010-10-05 11:00:35
【问题描述】:
我正在尝试使用 Word 自动化来计算 Word 文档中的页数。 到目前为止,我遇到了这些错误:
Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80070005.打开文档时 Word 卡住了。
我目前的决心和到目前为止我采取的步骤是:
将注册表项
[HKEY_CLASSES_ROOT\AppID\WINWORD.EXE]从{A86A40B3-0008-4D41-975C-BB586C7121E3}更改为{00020906-0000-0000-C000-000000000046}。-
在 DCOM 配置中
DCOMCNFG.EXE进行了以下更改:在其 appID“{A86A40B3-0008-4D41-975C-BB586C7121E3}”下显示的“Microsoft Word 应用程序”中,授予用户
iusr_<MACHINE_NAME>本地午餐权限(仅限)并将身份设置为“启动用户”。在“Microsoft Office Word 97 - 2003 文档”中,也被某些人称为“Microsoft Word 文档”(可能取决于 word 版本),我为 iusr 和 iwam 提供了完全启动和访问权限,将身份验证级别设置为“无”,将启动用户设置为我自己的管理员用户。
“2-b”部分中所有 3 个 mod 的组合最终使所有这些磨难都奏效了,现在可以正常工作了。 使用我自己的用户启动是对打开文档时单词卡住的响应。 将身份验证设置回默认值会导致错误“1”。 将启动用户设置回“启动用户”会导致错误“2”。
目前的情况是一切正常,但只有当我的用户登录并在计算机上处于活动状态并且我对我必须使用我自己的用户这一事实并不感到兴奋要登录并且身份验证设置为无。
我写这篇文章是为了回答那些像我一样挣扎了好几天才能让它工作的人,并希望能得到一些关于我如何提高安全性的答案,也就是删除启动用户并重新设置身份验证,而不是 24/7 登录生产机器(网站启动时)。
开发机规格:
Windows XP 专业版 32 位
IIS 5.1
经典 ASP 网站
执行自动化的 COM+ C# 对象。
【问题讨论】:
-
那真是一团糟。你可能已经过了一点,你拿出双枪管它在磁盘盘片之间射击它。不知道还有什么被打的。这属于 serverfault.com 顺便说一句。
-
tnx,也发布了@serverfault.com。
标签: c# asp.net permissions ms-word dcom