我尝试通过C#在OneNote 2013中创建新页面。
try
{
onenoteApp.CreateNewPage(sectionId, out pageId, NewPageStyle.npsBlankPageWithTitle);
}
catch (System.Runtime.InteropServices.COMException ex)
{
Console.WriteLine(ex.Message);
}
每次发生COMException时都会显示消息" HRESULT异常:0x8004200B"。错误代码表示该部分是只读的(hrSectionReadOnly)。 我无法通过添加更多页面或更新内容来获取该部分的可读性。我试图改变.one文件的安全设置,但没有成功。
有谁知道如何解决这个问题?
答案 0 :(得分:1)
我在使用C#和OneNote时遇到了同样的问题。每次我打电话给#34;写" -method,这意味着我想在OneNote-File中编辑一些东西,我得到了HRESULT的异常:0x8004200B。
我使用Microsoft OneNote 12.0类型库作为参考。我也尝试使用14.0类型的库,但是在每种方法上,编译器都会说像
错误1' Microsoft.Office.Interop.OneNote.Application'不包含' GetHierarchy'的定义没有扩展方法' GetHierarchy'接受类型的第一个参数......
所以我的解决方案是使用OneNote 14.0类型库并将嵌入互操作类型设置为FALSE 。你可以通过点击procomies中的OneNote参考(当你已经添加它时)找到它。
此后,一切正常!