Java JNA - 捕获所有消息

时间:2018-05-23 13:34:02

标签: java java-8 jna

如何捕获所有消息?

这是我的代码,只适用于LL(低级)挂钩:

public class Test extends Application {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setTitle("JavaFX");
        primaryStage.show();

        User32.INSTANCE.SetWindowsHookEx(2, new HOOKPROC_test(), Kernel32.INSTANCE.GetModuleHandle(null), 0);

        new Timer().scheduleAtFixedRate(new TimerTask() {
            @Override
            public void run() {
                User32.INSTANCE.GetMessage(new User32.MSG(), null, 0, 0);
            }
        }, 100L, 100L);

    }

    class HOOKPROC_test implements HOOKPROC {

        public HOOKPROC_test() {
        }

        public LRESULT callback(int nCode, WPARAM wParam, LPARAM lParam) {
            System.err.println("callback nCode: " + nCode);
            return new LRESULT(1);
        }
    }

}

我听说我需要为进程注入一些DLL,但我不知道该怎么做。

0 个答案:

没有答案