首页 新闻 会员 周边 捐助

关于java jna调用dll的问题

0
悬赏园豆:5 [待解决问题]

public interface User32 extends StdCallLibrary
{
User32 INSTANCE = (User32)Native.loadLibrary("User32",User32.class);//加载系统User32 DLL文件,也可以是C++写的DLL文件

int SendMessageA(int hwnd,int msg,int wparam,int lparam);
int FindWindowA(String arg0,String arg1);
void BlockInput(boolean isBlock);
int MessageBoxA(int hWnd,String lpText,int lpCaption,int uType);
}

public static void main(String[] args) throws Exception
{
int hwnd = User32.INSTANCE.FindWindowA(null, null);
System.setProperty("jna.encoding","GBK");//设置编码,防止乱码
User32.INSTANCE.MessageBoxA(0, "看我闪瞎你的狗眼", 0, 0);//调用消息对话框
// User32.INSTANCE.SendMessageA(49176,use, 0, 0);
User32.INSTANCE.BlockInput(true);//阻塞鼠标键盘的输入
// User32.INSTANCE.SendMessageA(hwnd, 0x0112, 0xF170, 2);//关闭显示器
Thread.sleep(2000);//间隔2秒
// User32.INSTANCE.SendMessageA(hwnd, 0x0112, 0xF170, -1);//打开显示器
Thread.sleep(2000);//间隔2秒
// User32.INSTANCE.SendMessageA(3278802,0x08,0,0);

 

 

我的代码如上,SendMessage里面的参数 我怎么知道什么代表什么? 然后我在网上找到的资料人家都是以 函数都是 VM_CLICK 这种形式的,但是我为什么没有呢? 

bigyoung的主页 bigyoung | 初学一级 | 园豆:191
提问于:2017-06-13 09:20
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册