を使用して、私はMSのOneNoteとサポートのバージョンのOfficeに自分のアプリケーションからテキストをエクスポートしたいと思います:2007、2010、2013年と2016年、それがすべてのバージョンのOfficeに付属していますように私はMicrosoft.Office.Interop.OneNote.dll Version:12.0.
0を使用しています。エクスポートC#
hrSectionReadOnly 0x8004200b
セクションでは、次のとおりです。私は "CreateNewPageは" 私は例外を取得しています使用してのOffice 2013の新しいOneNoteのページを作成しようとすると
問題があります読み取り専用です。
私はそれを変更しようとした、それは助けていない属性readOnly="true"
を見ることができます。まだ同じ例外が発生しています。
私はMicrosoft.Office.Interop.OneNote.dll Version:15.0.0
を参照する場合は、すべてが正常に動作します。
読み込み専用の理由とその問題を解決する方法を教えてください。ここで
はコードの例です:
string strPath;
string sectionId;
string xml;
// points directly on OneNote's Unfiled section
_app.GetSpecialLocation(SpecialLocation.slUnfiledNotesSection, out strPath);
_app.OpenHierarchy(strPath, "", out sectionId, CreateFileType.cftSection);
_app.CreateNewPage(sectionId, out _sectionId, NewPageStyle.npsDefault);
var strImportXml = @"<?xml version='1.0' ?>
<one:Page xmlns:one='" + _oneNoteNamespace + "' ID='" + _sectionId + @"'>
<one:Title>
<one:OE>
<one:T>
<![CDATA[
]]>
</one:T>
</one:OE>
</one:Title>
<one:Outline>
<one:Meta name='Rumba' content='" + new Random().Next() + @"' />
<one:OEChildren>
<one:HTMLBlock>
<one:Data>
<![CDATA[My sample page]]>
</one:Data>
</one:HTMLBlock>
</one:OEChildren>
</one:Outline>
</one:Page>";
_app.UpdatePageContent(strImportXml, DateTime.MinValue);
_app.NavigateTo(_sectionId, String.Empty, true);
を終了すると追加されますので、あなたが他の部分で行うことができますアクティブでない場合は」アクティブかではありません新しいファイルを書きたい。 Microsoft.Office.Interop.OneNote.dllバージョン:12.0.0を使用して、既存のOneNoteドキュメントにページを追加/作成したい。私はコードサンプル(上記参照) – xbuster
で質問を更新し、File.AppendAllLines(saveFileName、上記の編集済みのコードラインを参照)を使用できるデータを追加しました。 –
私は2番目の答えとして編集したコードを入れます –