Сегодня стояла задача получить доступ к WinApi из Java. На помощь пришел JNI.
Дня начала в maven надо прописать две зависимости.
Дня начала в maven надо прописать две зависимости.
<dependencies> <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>4.1.0</version> </dependency> <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna-platform</artifactId> <version>4.1.0</version> </dependency> </dependencies>А теперь выведем в консоль, например, заголовок активного окна с помощью этого кода.
import com.sun.jna.platform.win32.User32; import com.sun.jna.platform.win32.WinDef; public class GetForegroundWindowTitle { public static void main(String[] args) { User32 user32Lib = User32.INSTANCE; WinDef.HWND hwnd = user32Lib.GetForegroundWindow(); char[] title = new char[10240]; user32Lib.GetWindowText(hwnd, title, title.length); System.out.println(String.valueOf(title).trim()); } }С JNI есть доступ к api unix, mac и других осей.
Комментариев нет:
Отправить комментарий