Compiler Error CS0601
The DllImport attribute must be specified on a method marked 'static' and 'extern'
The DllImport
attribute was used on a method that did not have the correct access keywords.
The following sample generates CS0601:
// CS0601.cs
using System.Runtime.InteropServices;
using System.Text;
public class C
{
[DllImport("KERNEL32.DLL")]
extern int GetCurDirectory(int bufSize, StringBuilder buf); // CS0601
// Try the following line instead:
// static extern int GetCurDirectory(int bufSize, StringBuilder buf);
}
public class MainClass
{
public static void Main ()
{
}
}
Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.
.NET feedback
.NET is an open source project. Select a link to provide feedback: