当前位置: 首页 > 知识库问答 >
问题:

C#编程保护word文档在段落或范围级别为只读

郎经纶
2023-03-14
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文档的一部分(特别是标题或段落或alteast范围)

共有1个答案

鲜于子琪
2023-03-14

如果有范围对象,则可以使用编辑器成员访问允许编辑该范围的用户列表。

在您的情况下,您希望允许“每个人”编辑整个文档,然后删除编辑特定段落的权限。

在VBA中,它看起来如下所示(我相信您可以将其翻译成C#):

' Allow access to the entire doc
ActiveDocument.Content.Editors.Add wdEditorEveryone

' Remove access to paragraph 1
ActiveDocument.Content.Paragraphs(1).Editors(wdEditorEveryone).Delete
 类似资料:
  • 我正在将Office Interop与MS Word(Microsoft.Office.Interop.Word)和Microsoft一起使用。办公室工具。Word可在Word加载项中修改Word文档。我有一个包含我要编辑的特定文本的范围。 当我更新Text对象时,Range的段落格式将被重置,特别是对齐和左键。我可以在临时变量中保存对齐和左缩进并重置它们,但这并不理想。是否有一种方法来阻止段落格

  • 我想用vba来保护我的word文档。 的确,这是可能的,但我已经通过以下链接搜索了如何取消文档保护: http://www.aurelp.com/2015/04/01/how-to-unlock-a-microsoft-word-document-step-by-stepsolved/ 有没有其他方法可以成功地保护文档不被未经授权的用户使用?

  • 在使用ApachePOI写入word文档时,对于必须根据某个“计数”动态复制段落的位置,这些段落的标题必须按照章节顺序编号。假设它是word文档中的第7节,那么其中每个段落的标题应按顺序编号为7.1、7.2等。 尽管我看到了一些解决方案,其中考虑了word文档的xml,并使用了XWPFN编号。 还有其他更简单的方法吗? 或 如果我的word模板已经有了一个带有编号标题的段落,并且我必须多次复制相同

  • 正如您在word文档中看到的,有许多带有要点的问题。现在,我正在尝试使用apache POI从文件中提取每个段落。这是我当前的代码 上述方法的问题在于它打印的是每一行而不是段落。此外,项目符号也从提取的字符串中删除。返回一个纯字符串。 谁能解释一下我做错了什么。也请建议如果你有一个更好的想法来解决它。

  • 我最近一直在使用Apache POI,我不知道如何设置这样的字符串:“你好,世界”。这就是我一直在尝试的 我知道“run.setBold(true)”应该应用于整个paragraph,但这是我为word文档找到的唯一内容,所以我需要一些帮助来解决这个问题。谢谢你的帮助。

  • 这个指令可以创建简单的段落,也可以如普通文本一样使用内部信息单位: .. note:: 显示用户使用API时的注意事项. 指令的内容应该使用完整的语句及标点符号. 例如: .. note:: 该功能不适于发送垃圾邮件. .. warning:: 显示用户使用API时的注意事项. 指令包含完整的句子和标点符号. 不同于 note ,它一般显示的是信息安全方面的注意事项. .. version