No IntelliSense for C++/CLI in Visual Studio 2010?

Visual Studio-2010Visual StudioC++ CliIntellisense

Visual Studio-2010 Problem Overview


I just moved from Visual Studio 2008 to Visual Studio 2010 (final) and noticed one major flaw:

When I try to use AutoComplete in a C++ source file for managed C++, a small note in the footer appears:

IntelliSense for C++/CLI is not available

Uh, has IntelliSense for C++/CLI been dropped from Visual Studio 2010? Is there any way to get this back? It is rather useful...

Visual Studio-2010 Solutions


Solution 1 - Visual Studio-2010

You are correct. Unfortunately it has been dropped. You can check this opened issue on Microsoft's Connect website.

I'll just quote them for the sake of the answer:

> Unfortunately in this release we had to cut the intellisense support for C++/CLI due to time constraints. If you want to get some intellisense like quick info and memberlist on the native classes you can get it by choosing no /clr support in the project properties.

About getting back intellisense, your best chances for now are using third-party tools like VA Assist for example. I've tried it with Visual Studio 2008 and its IntelliSense is a whole lot better than the default one.

It is available again in Visual Studio 2012.

Solution 2 - Visual Studio-2010

If you want to get IntelliSense back, install Visual Assist X from Whole Tomato Software. Here you can get a 30-days trial to check the intellisense.

Solution 3 - Visual Studio-2010

According to the Visual C++ Team Blog, C++/CLI Intellisense will be in the next version of Visual Studio, but not in a service pack for VS2010. That blog post also gives some detail as to what went wrong and led to this sad state.

Solution 4 - Visual Studio-2010

I don't know if you can use this settings but it work for me. I only check the Common Language RunTime Support for the cpp files that use it. I do not check it for the whole project and I've got intellisense for all the files that don't use the CLI.

Solution 5 - Visual Studio-2010

Yes! you can enable the IntelliSence, but in a tricky way. Follow these instructions:

  1. Go to your project properties. (Right click on your project name in Project Explorer, and select Properties. or simply Alt + Enter)
  2. From Configuration Properties, select General
  3. In the right-hand section, find "Common Language Runtime Support" and change it to "No Common Language Runtime Support".
  4. Click the OK Button.

Now the IntelliSence is working. But a problem is an error when you compile your code! (The error is: error LNK1123: failure during conversion to COFF: file invalid or corrupt)

You can simply go back to Project Properties an change Common Language Runtime Support to "Common Language Runtime Support, Old Syntax (/clr:oldSyntax)".

Good luck.

Solution 6 - Visual Studio-2010

This solution is only if you don't want Common Language Runtime
It worked for me in VS2010
Go to Project Propreties > Configuration Properties > General > Common Language Runtime Support and set it to No Common Language Runtime Support. This will work fine just after hitting Apply button.

Solution 7 - Visual Studio-2010

As mentioned you could install some paid software such as "Visual Assist X from Whole Tomato Software".

or

You could use open source tools that contain intellisense*, one such tool is Qt Creator 3.3.1 (opensource). You have two options, either setup your entire project with Qt to compile using VS2010 compiler, or use Qt to link to your source files and compile with VS2010. You write your code in Qt, save, flip windows to vs2010 and compile and debug.

When changes are saved in Qt, vs2010 will automatically reload the source file in the project and you can compile.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionSamView Question on Stackoverflow
Solution 1 - Visual Studio-2010Ivan ZlatanovView Answer on Stackoverflow
Solution 2 - Visual Studio-2010EhteshamView Answer on Stackoverflow
Solution 3 - Visual Studio-2010Sam SkuceView Answer on Stackoverflow
Solution 4 - Visual Studio-2010croView Answer on Stackoverflow
Solution 5 - Visual Studio-2010GholamalihView Answer on Stackoverflow
Solution 6 - Visual Studio-2010Palash BansalView Answer on Stackoverflow
Solution 7 - Visual Studio-2010jesterView Answer on Stackoverflow