'System' : a namespace with this name does not exist

62,056

Solution 1

Set Common Language RunTime Support to be "Common Language RunTime Support (/clr)" in 2 places in your project properties :

For Visual Studio before 2019:

  • Configuration Properties -> General
  • Configuration Properties -> C/C++ -> General

For Visual Studio 2019:

  • Configuration Properties -> Advanced -> C++/CLI Properties
  • Configuration Properties -> C/C++ -> General

Solution 2

It was not enough for me when I just changed "Common Language RunTime Support (/ clr)".

I had to create the project in VS which would be a dedicated project for CLR: enter image description here

If you cannot see this option, you should add it in the VS installer first: enter image description here

Solution 3

Mif's answer was a little incomplete for me. If you still have the issue, you'd might want to check if you set the correct C++-version. For me it specifically needed ISO C++17 because the VS default preset ISO C++14 (at least a preset in my version) does not support the required CLI-packages. Thus, still set the Runtime support to Common Language RunTime Support (/clr) and set the correct C++ Language Standard in the Configuration Properties -> General tab.

Note: As of now (October 2021) ISO C++20 is currently not supported in CLI and will also fail to find System - I only found the 17-version to be compatible.

Since its a little easer the visual way, here the screenshots. And also don't forget Yinon_90's hint to have the version as well as dependencies installed!

enter image description here enter image description here enter image description here

Share:
62,056
Narendra
Author by

Narendra

I am a .net, C++ developer for more than 6 years. I have cleared MCTS 70-515 certification. I am interested in playing computer games(mainly racing). I also like photography. Currently I am working in WPF and C++. http://narendra-mallik.branded.me/

Updated on July 09, 2022

Comments

  • Narendra
    Narendra almost 2 years

    I had a C++ project which was running perfectly. Now I copied the project to another folder and added the project to a WPF application solution.

    Now the C++ project is giving me lot of build errors. One of them is "System' : a namespace with this name does not exist".

    Below are the lines which creates this error.

    #include "stdafx.h"
    
    using namespace System;
    using namespace System::Reflection;
    using namespace System::Runtime::CompilerServices;
    using namespace System::Runtime::InteropServices;
    using namespace System::Security::Permissions;
    

    The above lines are in AssemblyInfo.cpp file. I don't have any experience of C++, so finding it difficult to remove the errors. Any help is appreciated. Below is another error which might be helpful for you to resolve the issue.

    managed targeted code requires a '/clr' option
    

    Thanks in advance.