Как удалить атрибут readonly документа word с помощью c#?


Я использую 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();

Как включить редактирование для некоторых файлов только для чтения word, открытых в моем приложении c#?

1 2

1 ответ:

На самом деле это не имеет ничего общего с 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);