Office アドイン

[Officeアドイン]マニフェストファイルをデバッグする方法

Office アドイン本体はF12ツール等を使ってデバッグすることができますが、マニフェストファイルのデバッグで使えるツールは「Office App Compatibility Kit」くらいしかなく、記述にミスがあるとアドインが認識すらしないことがよくありました。

しかし、Office 2016(16.0.7019以降)でついにマニフェストファイルのデバッグ機能が追加されました。

機能の有効化

  1. レジストリエディタを起動します。
  2. HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\WEF\Developer\RuntimeLogging」キー(キーがない場合は自分で追加)の既定値に、ログファイルのフルパスを記述します(例:C:\log\manifest.log)。
  3. debug_manifest_01

RuntimeLoggingキーを設定した後、下記のような記述に誤り(IconUrl要素のDefaultValue属性の値が不正)があるマニフェストファイルを読み込むと、

<?xml version="1.0" encoding="utf-8"?>
<OfficeApp xmlns=
  "http://schemas.microsoft.com/office/appforoffice/1.1"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:type="TaskPaneApp">
  <Id>bed2652a-7c2e-4c25-950a-0eb94fa763ca</Id>
  <Version>1.0.0.0</Version>
  <ProviderName>kinuasa</ProviderName>
  <DefaultLocale>ja-JP</DefaultLocale>
  <DisplayName DefaultValue="Sample App" />
  <Description DefaultValue="Sample App" />
  <IconUrl DefaultValue="http://localhost/apps/icon.XYZ" />
  <Hosts>
    <Host Name="Document" />
  </Hosts>
  <DefaultSettings>
    <SourceLocation DefaultValue="http://localhost/apps/sample.html" />
  </DefaultSettings>
  <Permissions>ReadWriteDocument</Permissions>
</OfficeApp>

アプリケーションではもちろんアドインが読み込まれませんが、RuntimeLoggingキーで指定したログファイルにはマニフェストファイルを読み込んだ時のログが記録されています。

debug_manifest_02

debug_manifest_03

2016/07/27 9:33:52	Medium	Web Add-In Runtime Logging Session Started			
2016/07/27 9:33:52	Unexpected	Failed to parse manifest for add-in ID : bed2652a-7c2e-4c25-950a-0eb94fa763ca	Error at element "IconUrl" : Unsupported image file format: http://localhost/apps/icon.XYZ	Line 12	Char Pos 4
2016/07/27 9:33:55	Unexpected	Failed to parse manifest for add-in ID : bed2652a-7c2e-4c25-950a-0eb94fa763ca	Error at element "IconUrl" : Unsupported image file format: http://localhost/apps/icon.XYZ	Line 12	Char Pos 4

これを見るとマニフェストファイルのどの部分で躓いたのかが一目瞭然、すぐに修正することができます。
これまでマニフェストファイルの設定で苦労されたOffice アドイン開発者の方は是非お試しください。

ちなみに、上記ログ機能はパフォーマンスに影響を及ぼすらしいので、不要な時はRuntimeLoggingキーを削除、必要な時だけキー設定して機能を有効化するようにしてください。

参考Webサイト


2017/4/19 追記:
マニフェストの検証ツール「Office Add-in Manifest Validator」についても記事を書きました。

Excelで「Classic Menu」タブが表示されなくなるトラブルについて前のページ

[Excel]別インスタンスからの貼り付け時のダイアログを非表示にする方法次のページ

関連記事

  1. Office関連

    Instagram APIをVBAから呼び出してみる。

    最近画像共有系のSNS、Instagram(インスタグラム)を使い始め…

  2. Office関連

    ブラウザで簡単にOfficeドキュメントを確認できる「Office Web ビューアー」

    @seinoro さんのツイート(下記)で知ったサービス「View O…

  3. Office関連

    メモ帳だけでOutlook用アドインを作ってみる。

    「SharpDevelopでExcel用COMアドインを作成する方法」…

  4. Office関連

    [Word]隠し文字をクイックアクセスツールバーから設定する。

    Wordで、部分的に印刷したくない文字列がある場合には「隠し文字」がよ…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP