2013-08-17 36 views
10

私のプロジェクトが特定のサイズ(4,100行分のコード)に達したら、Visual Studioのオートコンプリート機能が正常に動作しなくなっています。また、サードパーティのライブラリの数が増えると(ネームスペースやクラスの属性やメソッドが見えなくなった)、パフォーマンスも低下することに気付きました。Visual Studioでオートコンプリート(IntelliSense)データベースをリフレッシュする

自動補完データベースを手動で更新する方法や、既存のプロジェクトに対して新しいものを作成する方法はありますか?

私は現在Visual Studio 2008の下で働いていますが、この問題はVisual Studio 2010でも発生しています。

+0

可能な重複:[VS2010のIDEいくつかのインテリセンス機能していない](http://stackoverflow.com/questions/4830397/vs2010いくつかのインテリセンスはありません)。 – IInspectable

+2

Intellisenseは永遠に壊れています。 NCBファイルを削除すると、少し時間がかかります。 –

+2

VS2010以降の場合は、.sdfファイル。 MSは、VS2010で始まるインテリセンスデータベースにSQLデスクトップデータベースを使用します。ソリューションを閉じ、.sdfファイルを削除してから、ソリューションを再度開きます。それはしばらくの間、料理をして、あなたのプロジェクト(およびシステムヘッダーを含むすべての*ヘッダー)をスキャンする必要があります。 – WhozCraig

答えて

5

Visual Studioを閉じて、プロジェクトフォルダに移動します。 * .sdfファイルにはIntellisenseデータベースが含まれています。このファイルを削除してビジュアルスタジオでプロジェクトを再度開くと、キャッシュが再構築されます。

sdfファイルを削除すると、私の問題が解決しました。

時には大きなソリューション(主にC++プロジェクト)を使用して作業することは、たぶん遅いほど遅くなります( )。それを修正するには、解決策を閉じて .SDFファイルを削除する必要があります。その後、もう一度やり直す必要があるまで週に約 の間、再び正常に戻ります。

根本的な原因は、私が行ったxperfプロファイリングによると、 が断片化し、VSはときどきデバッグとリリースの間で変更するときに20,000+ ランダム読み取りを行うことです。 SSD上のSDFファイルを置くと問題は解決しますが、必要はありません。 VSはSDFファイルをより効率的に使用する必要があり、SDF 操作をブロックすることはありません。

出典:私はC#のからCPPを呼び出すために相互運用機能を使用する場合、何かがCPP側で変更されたときに、私は多くの場合、例えば...、このような状況に遭遇しVS2017でhttps://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2255455-fix-the-delete-sdf-file-problem

+11

VS2015および2017で、ソリューションと同じフォルダに.vsフォルダが作成されるようになりました。これは、とりわけインテリセンスを含むフォルダです。削除すると問題が解決されます。 – korbes

+4

私は '.vs'フォルダを削除します。これは、IntelliSense PCHの問題に対する解決策でもありますが、ウィンドウレイアウト構成などが失われることに注意してください。 – user35443

0

コンストラクタ引数。

アンロードし、溶液中のCPPプロジェクトは赤い線を解決するのに役立ちますリロード..

関連する問題