如何在c# /WPF中以可编辑模式打开word文档文件(.doc)

本文关键字:word 文档 文件 doc 模式 编辑 WPF | 更新日期: 2023-09-27 18:11:57

当我运行这段代码时,它以只读模式打开文件,但我想以可编辑模式打开我的文档文件。我已经将只读模式设置为false。这是我使用的代码:-

Microsoft.Office.Interop.Word.Application winword = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document document = new Microsoft.Office.Interop.Word.Document();
try
{
    //Set status for word application is to be visible or not.
    //Create a missing variable for missing value
    object readOnly = false;
    object missing = System.Reflection.Missing.Value;
    object isVisible = true;
    document = winword.Documents.Open(pathToFile, ReadOnly: false, Visible: true);
    document.Activate();
    System.Runtime.InteropServices.Marshal.FinalReleaseComObject(winword);
    System.Runtime.InteropServices.Marshal.FinalReleaseComObject(document);
}
catch (Exception ex)
{
    // WB.Close(false, Type.Missing, Type.Missing);
    throw;
}

如何在c# /WPF中以可编辑模式打开word文档文件(.doc)

我猜你做不到。只读模式在一定程度上是作为一种安全措施提供的,以阻止某些宏在Word中执行。因此,提供一个覆盖它的SDK会给最终用户带来风险。您可以通过直接运行带有文件名参数的exe来绕过它,因为这样就像一个人双击图标一样,但我不熟悉WPF中可用或不可用的库。在老式的控制台或Windows窗体中,你会看到

System.Diagnostics.Process.Start([the path of Word.exe], pathToFile);

,但您必须小心查找word .exe的路径,因为这可能根据word的版本和给出的安装说明而变化。可以想象,那些COM对象会以某种方式公开路径,因为它们很有可能需要知道路径,但我还是不熟悉它们。