Errore del compilatore CS1613

Aggiornamento: novembre 2007

Messaggio di errore

Classe wrapper 'classe' della coclasse gestita per l'interfaccia 'interfaccia' non trovata. Probabilmente manca un riferimento a un assembly.
The managed coclass wrapper class 'class' for interface 'interface' cannot be found (are you missing an assembly reference?)

È stato effettuato un tentativo di creare un'istanza di un oggetto COM da un'interfaccia. L'interfaccia dispone degli attributi ComImport e CoClass , ma il compilatore non è in grado di trovare il tipo specificato per l'attributo CoClass.

Per correggere l'errore, provare una delle seguenti soluzioni:

  • Aggiungere un riferimento all'assembly che disponga della coclasse. L'interfaccia e la coclasse devono trovarsi quasi sempre nello stesso assembly. Per ulteriori informazioni, vedere /reference o finestra di dialogo Aggiungi riferimento.

  • Correggere l'attributo CoClass nell'interfaccia.

Nell'esempio che segue è illustrato l'uso corretto di CoClassAttribute:

// CS1613.cs
using System;
using System.Runtime.InteropServices;

[Guid("1FFD7840-E82D-4268-875C-80A160C23296")]
[ComImport()]
[CoClass(typeof(A))]
public interface IA{}
public class A : IA {}

public class AA
{
   public static void Main()
   {
      IA i;
      i = new IA(); // This is equivalent to new A().
                    // because of the CoClass attribute on IA
   }
}