変更点 §
- Visual Studio 2017対応 (2010-2015はGuidInserter2 Version 2.3でお使いください)
解説 §
「技術的に言うと、今回の版はマニフェストをvsixmanifest 1.0のフォーマットから2.0のフォーマットに置き換えたので、古い版では対応不可能になっている」
「古い版では、2.0のマニフェストを読めないってことだね」
「機能的には同じなので、旧版のGuidInserter2を使ってね、ということだ」
「問題はそれだけ?」
「いや。実は仮想マシンで問題無く動いたので公開に踏み切ったが、環境がグチャグチャの自分のマシンでは動いていない。そこが誤魔化して動かす方策がありそうだから妥協した」
「ダメじゃん」
「本当は完全に動くようにしたかったが、インストーラーやVisual Studioがどの情報を見ているか完全に分からなかったので妥協した」
「話はそれだけ?」
「いや。格納フォルダが同じではない問題もあった。旧版のVisual StudioはVSIXのモジュールをProgram Files (x86)の下に置いていたが、Visual Studio 2017ではProgramDataの下に置いている。かなりファイル検索機能を使いまくってモジュールの場所を特定したよ。フォルダ名の付け方も変化しているし。昔はProgram Files (x86)の下がMicrosoft Visual Studio 14.0的な名前だったが、2017ではMicrosoft Visual Studio\2017\Enterprise的な名前に変化している」
「けっこう違いがあるね」
「2017はかなり変化したと思って良いだろう」
「マニフェストのバージョンも?」
「vsixmanifest 2.0そのものは2017より前のバージョンからサポートされているようだが、2017で作ったモジュールは旧版を認識しなかった。そこは突っ込んでいない。旧版で済むからだ」
「動くようにするのが先だったわけだね」