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

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

関連記事

no image

そのURLは正しくない

先日、昼休みに自社の取締役と面談がてら食事をすることになって そのときに新しい名刺を見せてもらいました。 その名刺には会社のURLが書かれていました。 今となっては珍しくも何とも無い光景ですが、URL… 続きを読む

no image

PCが やっぱり 不調

徳島から戻ってきてPCの電源を入れてみると・・・ やはりこの間のなかなか立ち上がらない症状に戻ってるorz これはもう諦めて新しいマシンを仕入れることにします。 このままでは精神衛生上良くなさそうです… 続きを読む

ゲーム向けモニタ VISEO MDT243WG 購入

約8年間使ってきたCRTがついにお亡くなりになったので、観念して液晶モニタを購入しました!!! ジャジャーン!!! 画質や遅延など、ゲームにも耐えられるものをいろいろ調べて迷った結果、辿り着いたのがこ… 続きを読む

no image

メディアプレイヤーよ、何故だ

いつのまにか当方のメインPCで、asfファイルが再生不可能になっていました。 正確には、携帯などのハードウェアで作成したasfファイルなのですが、これは困りました。 当方がムービーを撮るときは専ら携帯… 続きを読む

no image

映像音声分配器GET!

これまでは、アイマスのPVとかキャプチャするときはいちいちTVからキャプチャのほうに線を繋ぎかえて撮っていました。 しかし、これは回数が増えてくるとかなり面倒です。 かと言ってキャプチャを通してプレイ… 続きを読む