意図
本来、 InDesign CC 2020向けのプラグインは、Visual Studio 2017で開発する。(公式ドキュメント)
vs2019でも開発できないか試してみた。
SDKに含まれるサンプルプロジェクトをビルドする所まで。
環境
- InDesignCC 2020
- Windows 10 (1909)
- Visual Studio 2019 (16.4.4)、以下VS
準備
Visual Studio 2019 をインストール
最初は最小限でOK。後で必要なものを追加インストールする。
(InDesignのプラグインはC++なので、「C++によるデスクトップ開発」あたりでいいと思う)
InDesign SDKを準備
- Adobe InDesignプラグイン開発用のSDKをダウンロードする。
要 アドビアカウント: https://www.adobe.io/apis/creativecloud/indesign.html
- ダウンロードしたSDK(ZIP)を適当な場所に解凍する。すごく時間がかかる。自分の環境では1時間弱かかった。(ファイル数が多い)
「plugin」という名前のフォルダが作成されるはず。
サンプルソリューションファイルを開く
SDKSamples.sln を開く
・・・\解凍元\plugin\build\win\prj
上記フォルダにある「SDKSamples.sln」を VS2019で開く
開かれる途中で警告が出る(場合もある):
ここで VSのインストールで足りてないものがあれば、インストールするようVSがうながしてくれる。(C++のいろいろ) 素直に従う。
(スクショ忘れた)
開いた後、設定変更が出る:
2017用のプロジェクトをVS2019環境で開いたので、修正(変換)してよいか聞いてくれる。
OKボタン押す。
(キャンセルしても後から変更できるはず)
BasicDialogをビルドしてみる。
BasicDialog を選択、右クリックでビルド
ビルドは [ Release] に変更。
エラー出る
重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー C1189 #error: "You need to update xlocnum hack header by copying over the header from your Visual Studio installation and applying the same changes as to the previous versions. Be careful, this header also changes between minor versions of Visual Studio."
エラー箇所を見てみる:
・・・\解凍元\plugin\source\precomp\msvc\
vs2019 っぽのが無い。(あたりまえだけど)
xlocnum_hack.h ファイルを見てみる。
vs2017 までの設定しかない。
最後の else 文に入ってエラーになってる。
2017の設定流用して、エラーが出ないように修正する。
【注意】この修正がどう影響するか不明。(この辺は自己責任にて)
再ビルドすると・・・。
うまくいった。
・・・\解凍元\plugin\build\win\releasex64\SDK
上記フォルダに「BasicDialog.sdk.pln」ができてる。
InDesignに設置してみる
InDesign インストール先の「Plug-Ins」フォルダにSDKフォルダごとコピー。
(BasicDialog.sdk.pln ファイルだけでも大丈夫だと思う)
C:\Program Files\Adobe\Adobe InDesign 2020\Plug-Ins\
InDesignCC 2020 を起動
メニューに「プラグイン」が追加され「SDK>BasicDialog」が表示される。
押すと ダイアログが表示された!
まとめ:
下記を代用しちゃってる。
- Windows SDK:10.0.15063.0 → (代用)10.0.19041.0
- プラットフォームツールセット:Visual Studio 2017 (v141) → (代用)Visual Studio 2019 (v142)
- xlocnum_hack.h: 2017の設定で代用
開発中はいいけどリリースビルドはvs2017環境を用意した方がいいかも。
おしまい