長いタイトルですみません。
今から .NET Micro Framework 開発環境を作ろうと思うと、
- Visual Studio 2015 Update 2 をインストール
- .NET Micro Framework v4.3 QFE2 をインストール
の順番でインストールすると思います。VSの最新版が 2015 Update 2 なので、当然ですね。
ところが、この順番でインストールすると、いくつかおかしな事象に遭遇します。
- 必要な using 句なのに、VS エディタ上では “Using directive is not required by the code and can be safely removed” というメッセージが表示される
- ちゃんと解決できるはずのメンバーなのに、”Cannot resolve symble ‘xxx’ ” というメッセージが表示される
- NETMF なのに LINQ がエラーにならない(本当ならばうれしい動きなんですが)
- NETMF なのに 自動プロパティ初期化子がエラーにならない(本当ならばうれしい動きなんですが)
- ビルド失敗する、または一見ビルド成功したように見えてボードに配置すると動作が怪しい
悔しいことに、前から使っているマシンではこの事象は発生しません。
どうも VS 2015 Update 2 前に NETMF をインストールし、あとから Update 2 に上げると問題ないようです。
だからと言って、今から環境を作るのに、無印 VS2015 → NETMF → VS2015 Update 2 の順番でインストールするのもうれしくありません。
解決方法がありました。
GHI Electronics さんのサイトに行くと、4月上旬に
がリリースされています。このニュースリリースの中で触れられている
パッチを当てるといいようです。ただし GHI さんは not official, Unsupported と言っているので、ご利用は自己責任で。
具体的には、パッチを解凍した中身の3ファイルを
C:\Program Files (x86)\MSBuild\Microsoft\.NET Micro Framework\v4.3
に上書きコピーします。(念のため、元のファイルはバックアップしておくのが安全)
これだけで OK。ちゃんと NETMF 開発できるようになります。
なお、パッチのダウンロード元 では上書き対象のフォルダーが間違っています。上記のフォルダーが正解です。
これでまた NETMF 開発できます!(世間は Windows 10 IoT ばっかりで若干悔しいですが)
しばらく、マシン入れ替えの際に何か起こってしまったのかと、SDK アンインストールやら VSアンインストールやら OS リカバリーやらを何度か試してみましたが状況は変わらず、ちょっと無駄な時間を過ごしてしまいました・・・。
「Visual Studio 2015 Update 2 に .NET Micro Framework v4.3 QFE2 をインストールした場合の不具合解消方法」への1件のフィードバック