C#中的Word组件

时间:2011-04-18 09:11:21

标签: iis-7

我在C#上使用Microsoft.Office.Interop.Word.dll的组件。但是当我在IIS上运行它时,我收到以下错误。

Retrieving the COM class factory for component with 
CLSID {000209FF-0000-0000-C000-000000000046} failed 
due to the following error: 80070005.

如果我在IIS上允许32位应用程序,我收到以下错误。

”Validation of viewstate MAC failed. If this application is 
hosted by a Web Farm or cluster, 
ensure that <machineKey> configuration specifies the 
same validationKey and validation algorithm.
AutoGenerate cannot be used in a cluster”

我在web.config文件中输入以下行。

<system.windows.forms jitDebugging="true"/>  

如果我再次跑,那会给我错误。

Microsoft Word encountered a problem.

Description: An unhandled exception occurred during the execution
of the current web    request. Please review the 
stack trace for more information about the error and 
where it originated in the code.

Exception Details: System.Runtime.InteropServices.COMException: 
Word encountered a problem.

Source Error:

Line 711:
Line 712:        //ADDING A NEW DOCUMENT TO THE APPLICATION
Line 713:        oWordDoc = oWord.Documents.Add(ref yol, ref oMissing, 
ref oFalse, ref   oTrue);
Line 714:
Line 715:        // SELECT END

顺便说一下,我在Windows Server 2008上使用IIS 7 64位。

我该如何解决这个问题?

提前致谢。

1 个答案:

答案 0 :(得分:0)

错误(或HRESULT)0x80070005转换为E_ACCESSDENIED,这意味着您在某处遇到了权限问题。

确保您网站的标识具有访问Word的权限。

还要确保将应用程序池的enable32BitOppOnWin64设置配置为与Word应用程序所针对的任何处理器体系结构相匹配。