2010-07-02 7 views

Répondre

2

Si votre projet C++ est un projet natif (standard C++), alors non. S'il s'agit d'un projet géré, vous pouvez ajouter une référence à celui-ci.

Pour le code natif, vous devez utiliser P/Invoke pour accéder aux fonctions dans la DLL C++.

6

Vous ne pouvez pas référencer directement les DLL natives. Vous ne pouvez le faire que si vous l'avez compilé pour l'interface de ligne de commande (ciblage .NET CLR) ou si vous avez créé un composant COM (auquel cas VS crée automatiquement une DLL d'interopérabilité). Sinon, vous devrez écrire une DLL wrapper.

0

Jetez un oeil à la page web this. C'est un très bon article sur le mélange de C, C++, C# et Lisp avec de courts exemples. Malheureusement, le C++ -> C# est possible surtout lorsque vous utilisez le C++ géré. exemple court (from earlier mentioned webpage) qui montre comment appeler le C++ classe géré Adder de C#:

using System; 
using System.Collections.Generic; 
using System.Text; 

namespace Dllcaller 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Adder a = new Adder(); 
      Console.WriteLine(a.add(1, 7)); 
      while (true) ; 
     } 
    } 
} 
+0

[Lien a changé] (http://www.vdanet.be/pmwiki/pmwiki.php?n=Main .Mixing) – Jens876

+0

Le lien a été mis à jour. –

Questions connexes