0

que quelqu'un peut me aider à trouver une solution à l'erreur suivante:option/clr en C++

"fatal error C1190: managed targeted code requires a '/clr' option"

Ma configuration est ..

  • Visual Studio 2008
  • Windows 7

Voici le code (j'ai obtenu en utilisant les ressources nettes)

#using <mscorlib.dll> 
using namespace System; 
using namespace System::IO; 

int main() { 
    // Create a reference to the current directory. 
    DirectoryInfo* di = new DirectoryInfo(Environment::CurrentDirectory); 
    // Create an array representing the files in the current directory. 
    FileInfo* fi[] = di->GetFiles(); 
    Console::WriteLine(S"The following files exist in the current directory:"); 
    // Print out the names of the files in the current directory. 
    Collections::IEnumerator* myEnum = fi->GetEnumerator(); 
    while (myEnum->MoveNext()) { 
     FileInfo* fiTemp = __try_cast<FileInfo*>(myEnum->Current); 
     Console::WriteLine(fiTemp->Name); 
    } 
} 
+1

Utilisez-vous déjà l'option/clr pour le compilateur? Parce que c'est essentiellement ce que le message d'erreur vous dit: http://msdn.microsoft.com/library/k8d11d4s%28VS.80%29.aspx –

Répondre

5

Faites simplement ce que le message d'erreur suggère. Il dit que vous devez activer l'option/clr lorsque vous utilisez du code managé, ce que vous faites. Ajoutez le commutateur/clr à la ligne de commande du compilateur ou activez le support CLR (Common Language Runtime) dans les paramètres du projet.

+0

j'ai testé ça ... ça marche, donc +1 – gpuguy

0

Je crois que mscorlib est automatiquement lié, au lieu de devoir le faire manuellement.