Advertencia del compilador (nivel 1) CS0626

Actualización: noviembre 2007

Mensaje de error

El método, operador o descriptor de acceso 'método' está marcado como externo y no tiene atributos. Agregue un atributo DllImport para especificar la implementación externa.
Method, operator, or accessor 'method' is marked external and has no attributes on it. Consider adding a DllImport attribute to specify the external implementation

Un método marcado como extern también se debe marcar con un atributo, como por ejemplo el atributo DllImport.

El atributo especifica dónde se implementa el método. En tiempo de ejecución, el programa necesita esta información.

El código siguiente genera la advertencia CS0626:

// CS0626.cs
// compile with: /warnaserror
using System.Runtime.InteropServices;

public class MyClass
{
   static extern public void M(); // CS0626
   // try the following line
   // [DllImport("mydll.dll")] static extern public void M();

   public static void Main()
   {
   }
}