簡體   English   中英

c# 中 DOC 到 DOCX 的轉換

[英]DOC to DOCX conversion in c#

我創建了一個將.doc文件轉換為.docx的工具。 該代碼在上個月之前運行良好。 現在,我們在 11 月 16 日進行了 Microsoft 365 升級,並發布了轉換器工具無法正常工作的消息。 它在下面的行中拋出ComException

Word.Application wordApplication=new Word.Application();
var wordDocument=wordApplication.Documents.Open(loc);

任何人都可以請指導。

目前尚不清楚您在何時何地嘗試在有問題的機器上自動化 Word。 但我認為它是在服務器端使用的......

Microsoft 目前不推薦也不支持任何無人參與、非交互式客戶端應用程序或組件(包括 ASP、ASP.NET、DCOM 和 NT 服務)的 Microsoft Office 應用程序自動化,因為 Office 可能表現出不穩定的行為和/或死鎖當 Office 在此環境中運行時。

如果您正在構建在服務器端上下文中運行的解決方案,您應該嘗試使用已確保無人值守執行安全的組件。 或者,您應該嘗試找到允許至少部分代碼在客戶端運行的替代方案。 如果您使用來自服務器端解決方案的 Office 應用程序,該應用程序將缺少許多成功運行所需的功能。 此外,您將承擔整體解決方案穩定性的風險。

Office 服務器端自動化的注意事項文章中閱讀有關此內容的更多信息。 作為一種可能的解決方法,您可以考慮使用為服務器端執行而設計的第三方組件。

您可以使用Spire.Doc而不是 Word interop 來實現 doc 到 docx 的轉換。 它不依賴於 MS Office。 這是一個基本示例:

using Spire.Doc;

namespace DocToDocx
{
    class Program
    {
        static void Main(string[] args)
        {
            Document doc = new Document();
            doc.LoadFromFile("Sample.doc");
            doc.SaveToFile("Result.docx", FileFormat.Docx);
        }
    }
}

更多文檔轉換和操作,可以訪問文檔 免責聲明:我為 Spire 工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM