powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Запуск native метода из сторонней DLL
5 сообщений из 5, страница 1 из 1
Запуск native метода из сторонней DLL
    #38326494
senyOr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги,

Есть такая задача. вызвать определенный метод из сторонней DLL (предоставляется клиентом).
При загрузке DLL ошибок нет, а вот при вызове метода выскакивает ошибка:
авторException in thread "main" java.lang.UnsatisfiedLinkError: sample.SampleDLL.getUID(ILjava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
at sample.SampleDLL.getUID(Native Method)
at sample.SampleDLL.main(SampleDLL.java:48)

Код приложения:
авторpublic class SampleDLL {

public static int uid;

public static native int getUID(int num, String mode);


public static void main(String [] args) {

System.load("D:\\WORK\\TestDllProject\\src\\sample\\testdll.dll"); // также работает и с loadLibrary

System.out.println("Dll is loaded.");
try {
uid = getUID(1, "GIR");
System.out.println("Good!");
}
catch(Exception e) {
System.out.println(e.getMessage());
}
}

}/**/

Прочел, как люди используют JNI http://java-course.ru/articles/jni/ , но в моем случае я не имею исходного когда dll.
...
Рейтинг: 0 / 0
Запуск native метода из сторонней DLL
    #38326560
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Постановка задачи не понятна. У вас есть DLL без исходного кода. Что значит и менять вы её не можете.
Она не вызывает Java код. Нужно сделать чтобы вызывала Java код. То есть поменять.
Вопрос как изменить код, который нельзя изменить?
...
Рейтинг: 0 / 0
Запуск native метода из сторонней DLL
    #38326608
senyOr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я прошу прощения. Возмонжо, непонятно описал задачу.

Есть JAVA приложение. В этом приложении подгружается сторонняя DLL (которая дана заказчиком) и из этой DLL вызывается определенный метод, который генерит КОД. Этот код я буду дальше использовать внутри своего JAVA приложения.

Проблема в том, что я не могу разобраться, как правильно подключить и вызвать DLL в моем JAVA приложении.

Примечение:
DLL написана на С.
У меня нет исходников этой DLL (нет файлов CPP), чтобы можно было сделать так, как на примере, который я указал в ссылке.

Вопрос заключается в том, как мне подключить DLL и вызвать из нее native метод?
...
Рейтинг: 0 / 0
Запуск native метода из сторонней DLL
    #38326612
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уже лучше. Смотри JNA, там не нужно оберток писать.
...
Рейтинг: 0 / 0
Запуск native метода из сторонней DLL
    #38327015
senyOr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо.

Реализовал с помощью JNA.

п.с. Однако, не получается в JMeter загнать... но это уже другая история.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Запуск native метода из сторонней DLL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]