MNAの世界

ブログをリニューアルしました!コメント、リンク、ツイートなどはお気軽にどうぞ。

PC、技術系

【C/C++】Visual Studio Code(VSCode)のインテリセンスがイマイチ賢くないときの対処法

投稿日:2018年9月20日 更新日:

結論から言うと「WindowsSDKをアップデートしろ!」です。

事の発端

最近VSCodeを使い始めたのですが、「IDEを使えない案件の場合でも慣れ親しんだVisualStudioライクなインターフェースでコーディングができる!」ということでとても気に入っておりました。

でも一つ欠点があるんですよ。それはインテリセンスがイマイチ賢くないってこと。例えばポインタ型の変数の後ろに “.” を書いてもメンバ候補が開いてしまいます。本来なら “->” を書いたときだけ開くべきです。そのメンバ候補もソース上に存在するあらゆるシンボルが列挙されてしまっているという有様で、「まあビルドをしていない以上、文脈を理解するのは難しいのかな?」と思っていました。
だがしかし!

衝撃の事実が発覚!

業務都合でもうひとつのPCにVSCodeをインストールしたら、なんとインテリセンスがめっちゃ賢い!!!ポインタ変数の後ろに “.” を打ってもちゃんと無視してくれますし、何よりメンバ候補の列挙が的確!!!なんだこれは!どちらのPCも同じWindows10なのに挙動が違いすぎるだろ!!!

完全アンインストールを試してみたが……

こういうときまず試すのが再インストール、なのですがどうもアンインストールを実行しただけでは拡張機能などのデータが残ってしまう模様。

↓というわけで下記のサイトを参考に完全アンインストールを行い、その後再インストールを行いました。

Visual Studio Code(VScode)を完全にアンインストールするメモ

でも挙動はかわらず。ぐぬぬ。

違いは何だ?

両者の環境の違いは何なのだ?と調べているとあることに気付きました。どうもインテリセンスが賢いほうの環境には下記のフォルダが存在するようなのです。
“C:\Program Files (x86)\Windows Kits\10\Include\10.0.14393.0”

このフォルダにはincludeファイルなど、開発に関わる重要なファイルが収められています。インテリセンスが賢くないほうの環境には “10.0.10240.0” までしか存在しません。
もしやこれか?

ちなみになんでそんなことに気付いたのかというと、インテリセンスが賢くないほうの環境ではなぜか開けない標準ヘッダがあったからなのです。賢いほうの環境では普通に開けていたのでそのファイルのパスを探ってみたわけです。どちらも同じようにVisualStudio2015が入っているにも関わらず不思議なもんですね。

WindowsSDKのバージョンアップを試す

↓マイクロソフトのサイトから最新のWindowsSDKを入れてみました。

するとあら不思議、インテリセンスが賢くなりましたとさ!
めでたしめでたし。

VSCodeは最新版がUbuntu14で動かなくて嵌ったり(16にしたらいけた)と、何かと最新の環境を要求してくるようです。アグレッシブに最近機能を使いまくってるんでしょうかねぇ……もしおかしいと思ったら色々最新版にアップデートしてみると治るかも?

-PC、技術系
-


comment

リンクが多数含まれていると表示されないのでご注意ください。(スパム対策)

関連記事

[QNAP]TS-209 II 到着!!!

先日注文した TS-209 II が到着しました!!! 早速セットアップ!!! 予めSEAGATE製の750GBのHDDを2つ仕入れておいたのでHDDの組み込みもスムーズに完了! 音も静かです。 つい… 続きを読む

no image

出先のプロキシ

今行ってる会社は門真の某社に比べるとネットとかは比較的自由にアクセス可能です。 しかし一部のサイトは見られないっっぽいです。 そんなことされるといろいろ試してみたくなると言うもの。 結果はこんな感じ。… 続きを読む

no image

玄箱 試験運用開始

前のWindows2000鯖で使っていた機能が一通り揃ったので 外部に公開準備をすすめる。 まずはIPを変更。 ルータの設定を変えるのは面倒なので、前の鯖で使っていたアドレスにする。 と言うわけで早速… 続きを読む

no image

【ワンセグ】不思議なポケット【勝手に起動】

最近当方の使っている携帯W51SHの挙動がおかしい・・・ なんと!!!ポケットに入れていると勝手にワンセグが起動していてバッテリーが無くなってしまっているのです!!! ポケットをたたくとワンセグがめん… 続きを読む

no image

玄箱Debian化

昨日ちょいといじって感触を試したところでDebian化してみることに。 解説しているサイトは沢山あるのでこれはすんなり動いた。 日本語化も試してみた・・・がなぜかうまくいかない。 ・・・まあいいか。 … 続きを読む