JNativeHook, как вы храните от печати все, что происходит?
Так что мне нужно jnativehook, чтобы определить, когда копия/вставка предварительно сформирована как приложение для копирования/вставки, и поскольку это консольное приложение, я не хочу, чтобы он получал спам по позиции курсора и нажатиям клавиш, мне просто нужно это сидите там и слушайте копию/вставку. Но вместо этого это происходит
Oct 25, 2014 10:21:54 AM org.jnativehook
INFO: hook_event_proc [405]: Mouse moved to 3468, 829.
Oct 25, 2014 10:21:54 AM org.jnativehook
INFO: hook_event_proc [405]: Mouse moved to 3468, 828.
Oct 25, 2014 10:21:54 AM org.jnativehook
INFO: hook_event_proc [405]: Mouse moved to 3467, 827.
Oct 25, 2014 10:21:54 AM org.jnativehook
INFO: hook_event_proc [405]: Mouse moved to 3467, 826.
Oct 25, 2014 10:21:54 AM org.jnativehook
INFO: hook_event_proc [405]: Mouse moved to 3467, 825.
Oct 25, 2014 10:21:55 AM org.jnativehook
INFO: hook_get_multi_click_time [218]: XtGetMultiClickTime: 200.
Oct 25, 2014 10:21:55 AM org.jnativehook
INFO: hook_event_proc [290]: Button 1 pressed 1 time(s). (3467, 825)
Oct 25, 2014 10:21:55 AM org.jnativehook
INFO: hook_event_proc [358]: Button 1 released 1 time(s). (3467, 825)
Oct 25, 2014 10:21:55 AM org.jnativehook
INFO: hook_event_proc [372]: Button 1 clicked 1 time(s). (3467, 825)
Есть ли способ отключить это? У меня есть основная регистрация Hative Hook и обнаружение ошибок, а также три пустых события прослушивания.
try {
GlobalScreen.registerNativeHook();
} catch (NativeHookException n) {
System.err.println("JNativeHook could not be registered");
System.err.println(n.getMessage());
System.exit(1);
}
GlobalScreen.getInstance().addNativeKeyListener(new Main());
Ответы
Ответ 1
Из использования вики на GitHub JNativeHook.
// Clear previous logging configurations.
LogManager.getLogManager().reset();
// Get the logger for "org.jnativehook" and set the level to off.
Logger logger = Logger.getLogger(GlobalScreen.class.getPackage().getName());
logger.setLevel(Level.OFF);
Например, добавление этих строк кода в конструктор основного объекта предотвратит отображение в журнале практически всех журналов. Это, однако, относится только к JNativeHook версии 1.2 (самая новая).
Также есть возможность отображать только предупреждения и ошибки.
Ответ 2
... прочитав документацию. JNativeHook использует java.util.logging для вывода консоли. Обратите внимание, что вы не можете отключить авторское право через регистратор по дизайну.