【问题标题】:API to trigger OneNote synchronization?触发 OneNote 同步的 API?
【发布时间】:2014-03-25 00:21:18
【问题描述】:

我正在寻找以编程方式从 OneDrive 触发 OneNote 同步的方法(例如 VBA、Powershell 等)。

案例如下: 1) 我在笔记本电脑上做了一些更改,想在平板电脑上同步笔记本电脑。 2) 现在我必须打开 OneNote 并单击同步按钮。但我想简单地运行 cmd/bat/ps1 文件来同步笔记本而不打开 OneNote 应用程序。 (就像我通过 robocopy 同步文件)

这可能吗?如果是这样-您能否提供详细信息我该怎么做? 我搜索了可能的 API,但没有找到任何相关的东西:(

问候, 生命力

【问题讨论】:

    标签: powershell automation synchronization onenote


    【解决方案1】:

    您的平板电脑是否安装了完整版的 OneNote?如果是这样,COM API,特别是SyncHierarchy 方法可能会有所帮助?

    SyncHierarchy Method
    
    Description
    
    Forces OneNote to sync the specified object with the source file on disk.
    
    Syntax
    HRESULT SyncHierarchy ( 
        [in]BSTR bstrHierarchyID);
    Parameters
    
    bstrHierarchyID—The OneNote ID of the object to be synced.
    

    【讨论】:

    • 是的。平板电脑是 Surface。而且,是的,我以前看到过这种方法,并认为它可能会有所帮助。但据我现在了解这一点 - 它即将强制以编程方式对文件进行存储(或刷新)更改(例如,在“对象”上的内存中添加/更新页面)。所以,它没有帮助......
    • 这是您正在寻找的 API。它将请求的层次结构节点与服务器同步,服务器将上传本地挂起的更改并下载服务器上的任何更改。
    【解决方案2】:

    OneNote Service API 仅提供在默认笔记本的快速笔记部分创建页面的功能。我们正在努力让 api 也能够调用页面。

    我认为这仍然不能满足您的上述需求。在上面的步骤 1) 中,当您在笔记本电脑上进行“更改”时,您仍然在某个 OneNote 客户端中,对吗?为什么需要退出客户端并在其外部进行同步?客户端将内容同步到 OneDrive 的速度非常快。

    【讨论】:

    • 是的,我认为你是对的 - REST API 不能解决这个问题。至于你的问题——事实上,OneNote 并不总是在我的桌子上打开。当我在笔记本电脑上进行一些更改时,我必须在平板电脑上:1)打开 OneNote 2a)等待一段时间,直到它同步 - 2b)手动触发更新(单击几下)。而不是它 - 我更喜欢有一些快捷方式来运行 cmd/ps1 文件,它可以在不打开 OneNote 的情况下执行此操作。特别是有时会出现 OneNote 没有完全同步,一些重要页面没有加载:(
    • 问题:为什么不提供这样的 API/命令行参数? IE。强制同步 OneNote 数据
    猜你喜欢
    • 1970-01-01
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-09
    • 1970-01-01
    相关资源
    最近更新 更多