我的工具将处理 1000 多个文档。我们在文档级别设置了只读,这会导致严重的性能问题。
_appObject = new Microsoft.Office.Interop.Word.Application(); Microsoft.Office.Interop.Word.Document _DocObj;字符串文件 = @”c:\Users\Public\Public Documents\Word12.docx”;
_DocObj = _appObject.Documents.Open(参考文件,参考缺失,参考缺失,参考缺失,
参考缺失,参考缺失,参考缺失,参考缺失,参考缺失,参考缺失,参考
缺失,参考缺失,参考缺失,参考缺失,参考缺失);//protect
appObject.ActiveDocument.Protect(Microsoft.Office.Interop.Word.WdProtectionType .wdAllowOnly Reading, ref noReset, ref password, ref useIRM, ref enforceStyleLock);
但我想将段落或范围设为只读
foreach (Microsoft.Office.Interop.Word.Paragraph aPar in
_appObject.ActiveDocument.Paragraphs)
{
Microsoft.Office.Interop.Word.Range parRng = aPar.Range;
string sText = parRng.Text;
// I want to make readonly here
}
然后文档将被保存。
_DocObj.SaveAs(FileName: TargetDir, FileFormat: WdSaveFormat.wdFormatDocumentDefault);
object saveChanges = WdSaveOptions.wdSaveChanges;
object originalFormat = WdOriginalFormat.wdOriginalDocumentFormat;
object routeDocument = true;
islockStatus = true;
var doc_close = (Microsoft.Office.Interop.Word._Document)_DocObj;
doc_close.Close(ref saveChanges, ref originalFormat, ref routeDocument);
因此,要求就像制作word文档的一部分(特别是HEADING或段落或aleast range)