2

使用 OneNote 2010 做一些 C# 互操作的东西。观察到一些非常奇怪的行为,我认为这是故意的,但我不明白。

在 onenote 选项中有一个用于保存和备份的部分。如果您在 Windows 资源管理器中转到 Default Notebook Location 文件夹并创建一个目录,它会自动在该目录中放置一个文件“Open Notebook.onetoc2”。

如果您更改默认目录,这将不再有效。不在 NEW 默认目录中,也不在 ORIGINAL 目录中。

奇怪的。更奇怪的是,如果您通过 onenote 本身在不同的位置创建一个新笔记本,它也会创建“Open Notebook.onetoc2”文件,但它与自动创建的不同。我认为这是一个错误,今天花了我大约 4 个小时的工作时间。更糟糕的是,微软自己的 API 不适用于这个文件。UpdateHierarchy() 失败。

有人看到这个或有任何解释吗?或者更好的是如何关闭这种行为?或者在哪里提交这个作为一个错误?

4

2 回答 2

4

好的,想通了。这是我的错(像往常一样),不知何故,我设法将默认笔记本位置 (C:\User\username\Documents\OneNote Notebooks) 添加为笔记本。所以它下面的任何东西实际上都应该是一个 SECTIONGROUP。

在更新我的层次结构时,我将其设置为并且它会呕吐。

于 2011-04-06T16:00:28.730 回答
2

根据 Daniel Hölbling 在这里的回答:http: //www.tigraine.at/2009/09/01/howto-get-rid-of-onetoc2-files-using-powershell/ 您可以通过首先导航来删除“onetoc2”文件进入正确的顶级文件夹,然后执行此 Powershell 命令:

Get-ChildItem -Filter "*.onetoc2" -Force -Recurse | Remove-Item –Force

在执行此操作之前,请确保您已关闭 OneNote 笔记本。此外,请注意,这也会删除任何合法的 OneNote 目录,所以不要在任何合法的 OneNote 文件夹上方运行它!

于 2015-06-03T19:11:07.720 回答