问题描述:
asp.net操作Word,
发布到另一台win 2000服务器上没问题,
发布到自己的手提win server 2003 R2上也没问题,
在正式的服务器上调试没问题,
布署到正式的服务器上就出现“错误:System.Runtime.InteropServices.COMException (0x800A1098): 因为没有打开的文档,所以这一命令无效”
正式服务器是Win Server 2003 R2
具体操作是打开一个 word 的 dot 模版,写入数据,再保存到临时文件里。
服务器上com组件已经开放给 network service 全部权限,相关文件夹也授予network service全部权限。
代码就不贴出来了,在几台机器上没事,在正式的服务器上DEBUG也没事,应该是没问题的。
到底要怎么设置?
解决方法:
已经解决。是Windows Server 2003的安全性问题。
在Microsoft Word 文档的DCOM里的 "identity "选项里,设置成用管理员帐户执行即可。
最奇怪的是无论在DCOM里授予network service怎样高级的权限,还是没戏。
同是OFFICE,EXCEL的DCOM就没这么多花样。
原文: