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関連

    テーブルの罫線色情報を列挙するPowerPointマクロ

    テーブルが多いプレゼンテーションファイルの、各テーブルの線の色の情報を…

  2. Office関連

    Office製品の開発者用リファレンス(ダウンロード版)

    Docs.comでまとめていたリンクなんですが、来月15日にすべて廃止…

  3. アイコン一覧

    Office 365アイコン(imageMso)一覧(S)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  4. Office関連

    [Win32 API]PowerPointマクロにショートカットキーを割り当てる。

    数日前、“PowerPointだとマクロにショートカットキーを割り当て…

  5. Office関連

    Outlook REST APIに会議室情報を取得するAPIが追加されました。

    松崎さんのツイートで、Outlook REST APIのベータエンドポ…

  6. Office関連

    PowerShellからNetOfficeを使ってWordやPowerPointを操作する方法

    前回の記事関連で、WordやPowerPointもドンとこいで…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

Translate

Chinese (Simplified)Chinese (Traditional)EnglishFrenchGermanJapaneseKoreanRussianSpanish

最近の記事

アーカイブ

PAGE TOP