尝试使用 Microsoft.Office.Interop.Word.Document 进行编译时遇到“内部编译器错误”

Facing an "Internal Compiler Error" when trying to compile with Microsoft.Office.Interop.Word.Document

提问人:user19485620 提问时间:11/10/2023 更新时间:11/10/2023 访问量:58

问:

在 asp.net Web 窗体应用中,无论我们如何尝试添加 rqueired 引用,在使用 Microsoft.Office.Interop.Word.Document 时,我们仍然会遇到以下错误:

Severity    Code    Description Project File    Line    Suppression State
Error   CS0584  Internal Compiler Error: stage 'COMPILE' symbol 'Settings'  1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 19  Active
Error   CS0584  Internal Compiler Error: stage 'CODEGEN' symbol 'Settings.AddFile(System.Web.UI.WebControls.FileUpload, string, string)'    1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 593 Active
Error   CS0584  Internal Compiler Error: stage 'COMPILE' symbol 'Settings.AddFile(System.Web.UI.WebControls.FileUpload, string, string)'    1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 593 Active
Error   CS0585  Internal Compiler Error: stage 'CODEGEN'    1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 599 Active
Error   CS0585  Internal Compiler Error: stage 'CODEGEN'    1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 610 Active
Error   CS0585  Internal Compiler Error: stage 'CODEGEN'    1_App_Code  C:\Users\BarExpo\source\Rms\Rms\RmsNew\RMS\RMS\App_Code\Settings.cs 622 Active

似乎主要问题是以下代码中的accures:

    Microsoft.Office.Interop.Word.Document wordDocument = appWord.Documents.Open(tempPath);
    wordDocument.ExportAsFixedFormat(HttpContext.Current.Server.MapPath(ClientFolderFiles + fileName),             Microsoft.Office.Interop.Word.WdExportFormat.wdExportFormatPDF);
    wordDocument.Close();

错误的任何解决方案/解释?在此处输入图像描述

我们尝试以多种方式添加所需的引用, 尝试使用几个版本的 DLL,并在几个工作区中重建解决方案。

C# asp.net Visual-Studio Web DLL

评论

0赞 Albert D. Kallal 11/10/2023
如果要使用 Office 互操作程序集,则还需要安装 Office 的有效工作副本,或者至少安装 Word 的有效工作副本。您还必须确保您在该计算机上安装的 word 副本也与您的项目设置的位大小相匹配(不再使用任何 CPU,而是强制项目为 x86 或 x64 位)。因此,不确定某些 .dll 怎么样,但归根结底,您需要在该计算机上安装有效的 Word 工作副本,对于 Web 服务器,不建议也不支持此类设置。
0赞 wenbingeng-MSFT 12/6/2023
这是因为编译器本身在编译过程中遇到了问题。这些错误通常不是由代码直接引起的,而是由编译器或构建环境的问题引起的。您可以尝试重新安装 Office 主互操作程序集

答: 暂无答案