使用C#时不免用调用别的DLL,如WIN32的API和自己以前做的DLL,
C#调用DLL很像VB,下面讨论的C#调用DLL的方式。
看看下面的例子,演示了怎么定义DLL函数接口
public class Utility
{
[DllImport("kernel32",
EntryPoint=”CreateDirectory”,
CallingConvention=CallingConvention.StdCall]
public static extern bool Create (string name);
[DllImport("User32"]
EntryPoint=”MessageBox”,
CallingConvention=CallingConvention.StdCall]
public static extern int MsgBox (string msg);
}
class MyClass
{
public static int Main()
{
string myString;
Console.Write("Enter your message: ");
myString = Console.ReadLine();
return Utility.MsgBox(myString);
}
}
值得注意的是,缺省的调用规则(CallingConvention)是Stdcall,同Winapi
C#调用DLL很像VB,下面讨论的C#调用DLL的方式。
看看下面的例子,演示了怎么定义DLL函数接口
public class Utility
{
[DllImport("kernel32",
EntryPoint=”CreateDirectory”,
CallingConvention=CallingConvention.StdCall]
public static extern bool Create (string name);
[DllImport("User32"]
EntryPoint=”MessageBox”,
CallingConvention=CallingConvention.StdCall]
public static extern int MsgBox (string msg);
}
class MyClass
{
public static int Main()
{
string myString;
Console.Write("Enter your message: ");
myString = Console.ReadLine();
return Utility.MsgBox(myString);
}
}
值得注意的是,缺省的调用规则(CallingConvention)是Stdcall,同Winapi