Подтвердить что ты не робот

Есть ли библиотека Java для доступа к собственному API Windows?

Есть ли библиотека Java для доступа к собственному API Windows? Либо с COM, либо JNI.

4b9b3361

Ответ 1

Вы можете попробовать эти два, я видел успех с обоими.

http://jawinproject.sourceforge.net

Проект интеграции Java/Win32 (Jawin) является бесплатным открытым исходным кодом архитектура для взаимодействия между Java и компонентами через компонент Microsoft Component Модель (COM) или через Win32 Dynamic Библиотеки ссылок (DLL).

https://github.com/twall/jna/

JNA обеспечивает легкий доступ к программам Java к родным общим библиотекам (DLL на Windows), не записывая ничего, кроме Java-код-нет JNI или собственный код обязательный. Эта функциональность сопоставим с Windows 'Platform/Invoke и Python. Доступ динамичен во время выполнения без генерации кода.

JNA позволяет вам напрямую звонить собственные функции с использованием естественной Java вызов метода. Java-вызов выглядит точно так же, как в собственном коде. Наиболее звонки не требуют специальной обработки или конфигурации; нет шаблона или генерируемый код.

Также читайте здесь:

http://en.wikipedia.org/wiki/Java_Native_Interface

Интерфейс Java Native (JNI) является среда программирования, которая позволяет Java код, запущенный на виртуальной машине Java (JVM) для вызова и для вызова 1собственные приложения (конкретные программы к аппаратной и операционной системе платформа) и библиотеки, написанные на другие языки, такие как C, С++ и сборка.

http://en.wikipedia.org/wiki/Java_Native_Access

Java Native Access предоставляет Java программы обеспечивают легкий доступ к библиотеки без использования Java Собственный интерфейс. Проект JNA направлен на обеспечивают естественный доступ естественным образом с минимальными усилиями. нет код шаблона или сгенерированного клея требуется.

Ответ 2

JNA довольно приятно. Я просто новичок, и мне было очень легко. Работает не только для Win32 API, но и практически для любой другой DLL.

Ответ 3

Jacob неплохо на стороне COM (но это настоящий COM - как вы пишете на С++ - если вы знакомы с true COM-программирование, тогда Jacob - это возможность для использования)

Ответ 5

Еще одна опция WinRun4J. Он имеет собственный связующий слой, который должен быть совместим с pinvoke.net (собственный формат привязки, используемый в dot net). Подробнее см. примеры. Это немного раньше, чем YMMV.

(полное раскрытие: я работаю над проектом).

Еще один вариант JFFI - это используется в jruby и jython для взаимодействия с родными библиотеками.

Ответ 6

Отъезд Waffle