如何使用c#删除word文档的readonly属性?

时间:2014-08-10 21:57:13

标签: c# ms-word office-interop

我正在使用Office 2013,我使用下面的代码打开word文档:

object fileName = FD.FileName;
object readOnly = false;
object isVisible = true;
WordApp.Visible = true;
aDoc = WordApp.Documents.Open(ref fileName, ref missing,
ref readOnly, ref missing, ref missing, ref missing,
ref missing, ref missing, ref missing, ref missing,
ref missing, ref isVisible, ref missing, ref missing,
ref missing, ref missing);
aDoc.Activate();

如何为在c#应用程序中打开的某些只读 word文件启用编辑功能?

1 个答案:

答案 0 :(得分:2)

实际上它与Office-interop无关,ReadOnly是该文件的文件属性。您可以在打开文件之前将FileAttribute设置为FileAttributes.Normal来删除此内容。

您可以尝试以下代码:

string fileName = FD.FileName;
File.SetAttributes(fileName, FileAttributes.Normal);

aDoc = WordApp.Documents.Open(fileName, Visible: isVisible);
aDoc.Activate();

请注意,如果要在关闭文件后将其重新设置为ReadOnly,请在致电aDoc.Close()后添加以下行:

File.SetAttributes(fileName, FileAttributes.ReadOnly);