各位大侠 无法调用api 关机函数,请帮帮我.提示这个错误.
对 PInvoke 函数“WindowsApplication3!WindowsApplication3.Form1::ExitWindowsEx”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。
源代码如下.如何解决这个问题呢.谢谢. [DllImport("user32")]
public static extern long ExitWindowsEx(long uFlags, long dwReserved);
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
ExitWindowsEx(1, 0);
}
对 PInvoke 函数“WindowsApplication3!WindowsApplication3.Form1::ExitWindowsEx”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。
源代码如下.如何解决这个问题呢.谢谢. [DllImport("user32")]
public static extern long ExitWindowsEx(long uFlags, long dwReserved);
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
ExitWindowsEx(1, 0);
}
1、我在C下写个关机的程序(可以只包含关机函数),然后生成该文件的dll文件
2、在C#下DllImport导入,并且调用该函数
我是通过这样的方式来实现的,不知道可不可以帮住你有问题可以通过[email protected]交流 桂林电子科技大学计算机系
信息管理与信息系统
2006.4.26
还有,需要获得权限才可以调用这个函数关机。//正确的打法
public static extern long ExitWindowsEx(Int32 uFlags, Int32 dwReserved);