如前所述,我们正在考虑移植一个广泛使用 user32.dll
的现有应用程序。主要用于屏幕截图和移动鼠标等操作。
使用像 JNA 这样的东西我们应该能够做同样的事情,但是有限制吗?我们应该注意的事情
谢谢
最佳答案
首先我要问为什么?如果您正在使用 JNA,那么您将失去 Java 的所有跨平台特性,并且失去 C# 为您提供的与 Windows 的紧密集成。没有任何限制会阻止您这样做,但如果您只是将自己束缚于使用 native 代码,那么我认为这没有多大意义。
另一方面,如果您希望获得跨平台功能并且正在考虑移植,那么您可以截取屏幕截图并使用 Java Robot 移动鼠标。轻松上课,无需本地代码。如果您要用 Java 重写,那是目前为止我推荐的方法。
关于c# - 将现有的 c# 移植到 java(很多 pinvoke/user32.dll)——陷阱?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6930484/