答:
问题解决了。弄错名字了,需要调用的方法为SetWindowTextW(),但是jna提供的User32接口没有提供这个方法,需要重新定义一个接口将方法写进去。代码如下
public interface WindowUtil extends StdCallLibrary, WinUser, WinNT {
WindowUtil INSTANCE = (WindowUtil) Native.loadLibrary("user32", WindowUtil.class);
int SetWindowTextW(PointerType hWnd, String lpString);
}
但仍存在的问题为原方法中提供的数据类型为C++的LPCSTR ,java中为String。结果可能会出现乱码