51

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...

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Sam
  • 26,538
  • 45
  • 157
  • 240

7 Answers7

46

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.

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Ivan Zlatanov
  • 5,026
  • 3
  • 26
  • 44
  • ARG! Thanks for the information! I'll have a look at VA X ... or postpone our move to VS2010. – Sam Apr 21 '10 at 10:50
  • 3
    VA X is a "must have" if you do C++/CLI... but from my experience with C++/CLI, I'd suggest moving away from it as far as possible! – surfen Mar 14 '12 at 09:53
  • If they hadn’t “fixed” it for VS2012, then one would wonder if they had bought Whole Tomato and did this as a sneaky cash-grab. Hopefully they will restore it for VS2010 with a service pack. – Synetech Jun 06 '13 at 14:07
8

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.

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Ehtesham
  • 81
  • 1
  • 1
8

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.

Sam Skuce
  • 1,657
  • 14
  • 19
6

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.

cro
  • 83
  • 1
  • 3
1

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.

Peter Mortensen
  • 28,342
  • 21
  • 95
  • 123
Gholamalih
  • 52
  • 2
0

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.

0

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.

jester
  • 220
  • 3
  • 9