Disable or pause default IntelliSense for C/C++

The C/C++ parser in default IntelliSense, especially in extremely large solutions and with older IDEs, may slow an IDE such that performance while editing is unacceptable. If this appears to be the case for your environment, consider disabling default IDE IntelliSense for C/C++ and relying only on the lighter parser in Visual Assist. If you use Visual Studio 2008 or older, consider preventing the parsers from running simultaneously.

If you develop with Unreal Engine 4 (UE4), following the UE4-specific documentation to disable default IntelliSense and UE4.

Note: disabling of default IntelliSense renders inoperable some features that rely on the module, including the Class View and Add Class Wizard.

Disabling or pausing of IDE IntelliSense varies by IDE. In all environments, begin by choosing Visual Assist as the source of C/C++ content in the options dialog of Visual Assist.

Then, follow steps for your IDE.

Visual Studio 2010 and newer

Disable IntelliSense for all solutions by adjusting the following two settings in the specified order, i.e. set the interval to zero before disabling the database:

IDE Tools menu -> Options -> Text Editor -> C/C++ -> Advanced -> Rescan Solution Interval = 0

IDE Tools menu -> Options -> Text Editor -> C/C++ -> Advanced -> Disable Database = True

More information is available in this post on the Visual C++ Team Blog.

Visual Studio 2008 and older

Option 1: Disable IntelliSense for a specific solution

Exit the IDE.

Delete NCB existing NCB file(s), and create two, read-only, zero-length NCB files in the base directory of your solution, and one in the %TEMP% directory.

Reply "no" when you load your solution in the IDE.

Re-enable default IntelliSense by deleting the NCB file in the solution base directory.

Option 2: Disable IntelliSense for all solutions

Exit the IDE.
Rename C:\Program Files\Microsoft Visual Studio 8\VC\vcpackages\feacp.dll

Return the DLL to its original name to re-enable default IntelliSense.

Option 3: Pause default IntelliSense parse during Visual Assist parse

Exit the IDE.

Create the registry string value "DefaultIntelliSense" in HKCU\Software\Whole Tomato\Visual Assist X\ <IDE spec> \

Set value to "Delay" to temporarily prevent default Intelllisense from parsing while Visual Assist parses.

Set value to "Disable" to prevent default Intelllisense from parsing at all. (This option differs from renaming of feacp.dll, in that setting value to "Disable" still causes the IDE to load an existing NCB.)

Note: Visual Assist ignores value of registry string value "DefaultIntelliSense" if option to "Get content from default IntelliSense" is enabled.

Related Documentation

Title Meaning
Resolve a performance problem with Visual Assist Starting point for all performance problems