这是我的ClickMouse()函数的代码:
[DllImport("user32.dll", CharSet = CharSet.Auto, CallingConvention = CallingConvention.StdCall)]
public static extern void mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);
private const long MOUSEEVENTF_LEFTDOWN = 0x02;
private const long MOUSEEVENTF_LEFTUP = 0x04;
private const long MOUSEEVENTF_RIGHTDOWN = 0x08;
private const long MOUSEEVENTF_RIGHTUP = 0x10;
private void ClickMouse()
{
long X = Cursor.Position.X;
long Y = Cursor.Position.Y;
mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,当我的程序来到此代码时,它会抛出此错误消息:
检测到PInvokeStackImbalance消息:调用PInvoke函数'WindowsFormsApplication1!WindowsFormsApplication1.Form1 :: mouse_event'使堆栈失去平衡.这很可能是因为托管PInvoke签名与非托管目标签名不匹配.检查PInvoke签名的调用约定和参数是否与目标非托管签名匹配.
请帮忙?
出于某种原因,我在我的Java应用程序中遇到了令人讨厌的不满意的链接错误.
这是有问题的罪犯:
System.loadLibrary("psjw");
Run Code Online (Sandbox Code Playgroud)
尽管库psjw.dll显然与此类在同一个源包中.
请帮忙.