.NET 调用kernel32的函数解决办法
.NET 调用kernel32的函数
在便用 .NET 调用kernel32的函数时
[DllImport("kernel32.dll", ExactSpelling = true)]
internal static extern IntPtr GetCurrentProcess();
有这种 .
也有
DllImport("kernel32.dll", EntryPoint = "SetProcessWorkingSetSize")]
public static extern int SetProcessWorkingSetSize(IntPtr process, int minSize, int maxSize);
这种 这两种里面 internal static extern和public static extern 是怎么确定用哪个的?
------解决方案--------------------
访问修饰符而已。
internal表示本程序集里可以访问,public则本程序集,其他程序集都可以访问。
------解决方案--------------------
public和static写前写后没有区别
如果你的api声明的函数在当前程序集内调用,public和internal也没有区别
------解决方案--------------------
这个api会被引用你的dll的程序调用就用public,如果就本项目内使用就internal
在便用 .NET 调用kernel32的函数时
[DllImport("kernel32.dll", ExactSpelling = true)]
internal static extern IntPtr GetCurrentProcess();
有这种 .
也有
DllImport("kernel32.dll", EntryPoint = "SetProcessWorkingSetSize")]
public static extern int SetProcessWorkingSetSize(IntPtr process, int minSize, int maxSize);
这种 这两种里面 internal static extern和public static extern 是怎么确定用哪个的?
------解决方案--------------------
访问修饰符而已。
internal表示本程序集里可以访问,public则本程序集,其他程序集都可以访问。
------解决方案--------------------
public和static写前写后没有区别
如果你的api声明的函数在当前程序集内调用,public和internal也没有区别
------解决方案--------------------
这个api会被引用你的dll的程序调用就用public,如果就本项目内使用就internal