Портирование существующего C # в Java (много pinvoke / user32.dll) - Подводные камни? - PullRequest
2 голосов
/ 03 августа 2011

Как говорится, мы находимся в процессе рассмотрения вопроса о портировании существующего приложения, которое довольно широко использует user32.dll.Главным образом для таких вещей, как создание снимков экрана и перемещение мыши.

Используя что-то вроде JNA, мы должны быть в состоянии сделать то же самое, но есть ли ограничения?Вещи, которые мы должны знать

Спасибо

1 Ответ

2 голосов
/ 03 августа 2011

В качестве первого пункта я должен спросить, почему? Если вы используете JNA, вы все равно теряете кроссплатформенную природу Java и теряете тесную интеграцию с Windows, которую дает вам C #. Нет никаких ограничений, которые бы мешали вам делать это, но если вы все равно привязываетесь к использованию нативного кода, то я бы сказал, что в этом нет особого смысла.

Если, с другой стороны, вы хотите получить кроссплатформенную возможность и хотите портировать, вы можете делать снимки экрана и перемещать мышь, используя класс Java Robot , без родного код требуется. Если вы переписываете на Java, я бы рекомендовал этот подход.

...