【问题标题】:Handle autosave in Word 2016 (Office 365) VSTO Add-In在 Word 2016 (Office 365) VSTO 加载项中处理自动保存
【发布时间】:2019-04-30 05:26:13
【问题描述】:

我想在 Word (Office 365) 中确定用户是否启用了自动保存选项。它的目的是在 DocumentBeforeSaveEvent 中检查此选项并防止启用自动保存时的某些操作。 我这样检查:

Globals.ThisAddIn.Application.ActiveDocument.IsInAutosave

根据 Microsoft documentation,如果用户启用了自动保存,此标志应为 true。但它总是是错误的。无论我是打开已启用自动保存的文档还是创建新文档并通过切换到 autosave=on 来保存它。

IsInAutoSave 属性不起作用的原因有哪些?是否有解决方法来检查是否启用了自动保存?也许这个设置存储在其他对象、设置文件或注册表中?提前致谢。

【问题讨论】:

    标签: c# office365 vsto office-addins


    【解决方案1】:

    那个属性不是你想象的那样。见Word 2013: AutoSave and the new property IsInAutoSave。它应该在DocumentBeforeSave 事件期间用于判断当前保存 是否为自动保存。它还在您链接的文档中说明了这一点。

    我不知道正确的属性是什么,你想要什么。

    有点有趣(我在这里切线),当我以 2013 年为目标时,该属性并未在智能感知中列出。我不确定为什么会这样。我改用它(Word 2010 需要它):

    dynamic wb = Application.WordBasic;
    autosave = wb.IsAutosaveEvent == 1;
    

    我不记得它是从哪里来的。

    【讨论】:

    • 此解决方案在 BeforeSaveEvent 中适用于我:dynamic wb = doc.Application.WordBasic;如果 (wb.IsAutosaveEvent == 1) {} 。奇怪的是 WordBasic 属性隐藏在 Inellisense 中。我用谷歌搜索了 Word 2007 的类似解决方案,并认为它不适用于 Word 2016。但它确实有效!谢谢,克里斯。
    猜你喜欢
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 2015-12-14
    • 2020-01-18
    • 2017-01-06
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多