Могу ли я каким-нибудь образом воспользоваться функциями, описанными в *.h файле (на языке C++), из приложения Delphi? И можно ли воспользоваться функциями из *.class файла Java?
Заранее благодарен.
Здравствуйте, aleckstein, Вы писали:
A>Могу ли я каким-нибудь образом воспользоваться функциями, описанными в *.h файле (на языке C++), из приложения Delphi?
Трудно, но можно. A>И можно ли воспользоваться функциями из *.class файла Java?
Нет.
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Ну, зачем же сразу нет-то? Можно на той же жаве написать переходник, который будет вызывать нужнуе функции. А уже переходник запускать из нашего приложения. Аляповато, но ведь работать будет!
Slicer
Специалист — это варвар, невежество которого не всесторонне :)
Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, aleckstein, Вы писали:
A>>Могу ли я каким-нибудь образом воспользоваться функциями, описанными в *.h файле (на языке C++), из приложения Delphi? S>Трудно, но можно. A>>И можно ли воспользоваться функциями из *.class файла Java? S>Нет.
Пожалуй соглашусь. Вот наоборот (из Java использовать C++ или Delphi) — трудно, но можно.
Надо копать в сторону native-методов. В книжках по Java эта технология описана.
Может и в обратную сторону чего накопать удасться.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Здравствуйте, Slicer [Mirkwood], Вы писали:
SM>Ну, зачем же сразу нет-то? Можно на той же жаве написать переходник, который будет вызывать нужнуе функции. А уже переходник запускать из нашего приложения. Аляповато, но ведь работать будет!
При таком подходе имеет смысл на любой онтоп-вопрос типа "а можно ли ..." отвечать "да". Ну, кроме очень узкого класса вопросов типа "можно ли написать алгоритм, проверяющий корректность любого другого алгоритма".
... << RSDN@Home 1.1 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Ну, как сказать. Достаточно четкое представление о задаче уже подразумевает формирование определенного круга ее возможных решений. Если тебя спросят, можешь ли ты, находясь сегодня в Новосибирске, через день оказаться в Москве, ты же не ответишь "нет" только потому, что средняя скорость твоего перемещения ограничена величиной порядка 7 км/ч. Ведь есть решения другого уровня (отходя от круга того, что можешь сделать непосредственно ты) — автомобиль, поезд, самолет...
Так и здесь. Мы понимаем, что Java — язык интерпретируемый, а потому решить задачу без использования JVM нельзя. Значит, более удобных для нас (в смысле простоты) решений, более "легкого" уровня решений, у задачи просто нет. Попробуем этот уровень (вдруг получится). Итак, вопрос — как можно поюзать JVM. Способов, базирующихся на COM или чем-то подобном, я не знаю (хотя, в принципе, должны существовать, надо только искать). Поэтому предложил единственное решение этого уровня — довольно тривиальное.
Если бы и это было невозможно, можно было бы поискать в инете Free-реализации JVM. Ну, а следующий уровень — написать такую реализацию самому.
Slicer
Специалист — это варвар, невежество которого не всесторонне :)
Здравствуйте, aleckstein, Вы писали:
A>Могу ли я каким-нибудь образом воспользоваться функциями, описанными в *.h файле (на языке C++), из приложения Delphi? И можно ли воспользоваться функциями из *.class файла Java? A>Заранее благодарен.
Здравствуйте, LaptevVV, Вы писали:
LVV>Надо копать в сторону native-методов. В книжках по Java эта технология описана. LVV>Может и в обратную сторону чего накопать удасться.
удасться, всякие Java2Exe так и пашут (из exe запускают JVM и работают с ней
на http://projectjedi.sourceforge.net/ есть
порт JNI (Java Native Interface, кажется ) и там есть примеры вызова Delphi Dll из Jаva
и наоборот — из Delphi exe работа с Java class
Кстати говоря, я скросспостил вопрос на какой-то Java-форум, и там посоветовали копать в сторону JNI (Java Native Interface). Так что способ есть однозначно. Эксплорер же как-то заставляет рисоваться апплеты...
Slicer
Специалист — это варвар, невежество которого не всесторонне :)